[英]Comparing similar columns by using max(date)
我有一個像下面的桌子
Column 1 Column 2 Column 3 Column 4
aaa bbbb ccc 1/1/16
aaa bbbb ddd 2/1/16
abc def ghi 1/1/16
abc def ihg 2/1/16
我希望輸出是
Column 1 Column 2 Column 3 Column 4
aaa bbbb ddd 2/1/16
abc def ihg 2/1/16
那就是我想要的結果為(column1,2,3)和max(column4)。 我正在使用SQL Server! 我該如何實現?
您對所需內容的描述與數據不匹配。 您似乎希望對col1和col2對的每一行在col4中具有最大日期。
您可以使用row_number()
獲得此信息:
select t.*
from (select t.*,
row_number() over (partition by col1, col2 order by col4 desc) as seqnum
from t
) t
where seqnum = 1;
編輯:
如果問題的解釋是您要使行具有第4列的最大總體值:
select t.*
from (select t.*,
rank() over (order by col4 desc) as seqnum
from t
) t
where seqnum = 1;
尚不清楚您想要什么,但這會產生預期的輸出:
select * from mytable
where column4 = (select max(column4) from mytable)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.