【发布时间】:2021-10-04 15:49:45
【问题描述】:
MS Access,希望根据最近的日期和另一列记录 ID 分数小于 60 的第三个条件查询每个唯一记录 ID
示例表:
| RecordID | Score | Date |
|---|---|---|
| 1 | 80 | 1/1/2020 |
| 1 | 60 | 1/1/2021 |
| 2 | 80 | 1/1/2020 |
| 2 | 60 | 1/1/2021 |
查询会拉取:
| RecordID | Score | Date |
|---|---|---|
| 1 | 60 | 1/1/2021 |
| 2 | 60 | 1/1/2021 |
我最初尝试将记录 ID 和最近的日期作为起点:
SELECT RecordID, MAX(date)
FROM table
GROUP BY RecordID;
但它所做的只是回报我
| RecordID | Date |
|---|---|
| null | 1/1/2021 |
感谢您提前提供的任何帮助。
【问题讨论】:
-
您显示的查询不应该返回那个。它应该在没有
Score列的情况下返回所需的结果。 -
如果你想要小于60的值,为什么
60在结果集中?此外,您的示例数据无法为RecordId返回NULL以进行简单聚合。