【发布时间】:2017-06-02 16:21:38
【问题描述】:
我正在尝试编写一个 SQL 查询,以带回具有 MAX ID2 和 MAX DATETIME 的记录
在我目前的结果中,
存在具有相同 nmae 和 special_number 的记录。它们仅在 ID2 和 Date_Time 上有所不同。 special_number 应该是唯一的并且没有重复。如果有重复的special_number,则选择ID2和date_time最大的记录
对于重复项(有很多),我只需要选择具有 MAx ID2 和 DATE_TIME 的记录。 比如ADDEN CROSS,我只需要带回ID2 = 333和2017-05-05的ADDEN CROSS即可。
我试过 MAX 但没用
SELECT DISTINCT ID, NAME, MAX(ID2), SPECIAL_NUMBER and DATE_TIME
FROm TABLE1
WHERE DATE_TIME BETWEEN @START_DATE and @END_DATE
GROUP BY ID, ID2, SPECIAL_NUMBER, DATE_TIME
感谢任何帮助。谢谢
我目前的结果
ID NAME ID2 SPECIAL_NUMBER DATE_TIME
123 JOE SMITH 456 D123 2017-06-05
123 JOE SMITH 455 D123 2017-06-04
124 JIM DONE 111 E111 2017-06-02
122 ME TOO 222 G111 2017-06-01
146 ADDEN CROSS 333 R555 2017-05-05
146 ADDEN CROSS 332 R555 2017-05-04
146 ADDEN CROSS 331 R555 2017-05-02
我的预期结果
ID NAME ID2 SPECIAL_NUMBER DATE_TIME
123 JOE SMITH 456 D123 2017-06-05
124 JIM DONE 111 E111 2017-06-02
122 ME TOO 222 G111 2017-06-01
146 ADDEN CROSS 333 R555 2017-05-05
【问题讨论】:
标签: sql sql-server