我有以下數據:SQL查詢集團通過幫助
cust subject date
Cust1 Subject1 2010-12-31 21:59:59.000
Cust1 Subject1 2010-12-31 21:59:59.000
Cust4 Subject3 2011-02-27 21:59:59.000
Cust5 Subject1 2010-10-31 21:59:59.000
Cust5 Subject2 2010-10-31 21:59:59.000
Cust6 Subject2 2010-10-31 21:59:59.000
Cust6 Subject2 2010-12-31 21:59:59.000
我需要實現以下目標:
- 集團他們的卡斯特和主題
- 如果有2條記錄與然後我需要返回具有最高日期的那個
- 如上所述,如果日期相同,則只返回其中的一個。
查詢的結果應該是:
cust subject date
Cust1 Subject1 2010-12-31 21:59:59.000
Cust4 Subject3 2011-02-27 21:59:59.000
Cust5 Subject1 2010-10-31 21:59:59.000
Cust5 Subject2 2010-10-31 21:59:59.000
Cust6 Subject2 2010-12-31 21:59:59.000
誰能幫助我?
我能夠做到的要求,2但不是所有的3
當然MAX([日期])工作... ROW_NUMBER()是矯枉過正。 :)不過,我喜歡它! – 2010-07-15 06:58:52
我認爲您需要在WHERE子句的行號列上添加'AS RN'才能正常工作... – 2010-07-15 06:59:31
非常感謝。 我接受這個答案的原因是我忘記提及我還需要返回其他列,以至於我不會將它們包含在組中,也不能使用它們的聚合函數(如標題例如),它不會與正常的小組一起工作(至少不像這個那樣容易)。 我會看看分區功能,它們看起來像是一個很大的節省時間。 – HaniBey 2010-07-15 07:09:01