我想写一个SQL查询,带回与MAX ID2和MAX DATETIMESQL SELECT MAX()是返回多个记录
在我目前的结果记录,
有记录具有相同nmae和special_number。它们只有ID2和Date_Time。 special_number应该是唯一的并且不重复。如果有重复的特殊号码,选择最大ID2和日期时间的记录
对于重复项(其中有很多),我只需要选择具有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
如果'ID2'不是具有最新的最新'DATE_TIME'的记录,可能会给出错误的数据,可能是在他的数据中,但有机会。 :) –
@EvaldasBuinauskas OP的声明“我只需要选择具有MAX'ID2'和'DATE_TIME'的记录”意味着两者在同一记录上变成了'MAX'。否则,选择将是不明确的。 – dasblinkenlight