我需要为表中的每列选择前2个不同的值。根据日期字段选择前2个值。
Table A
status id Col1 Col2 Col3 Date
A 1 Name1 Name4 Name6 1/18/14 5:54
B 1 Name1 Name5 Name6 1/18/14 5:54
B 1 Name2 Name6 Name6 1/12/14 5:54
B 1 Name2 Name6 Name7 10/11/13 3:34
结果:
status id Col1 Col2 Col3
A 1 Name1 Name4 Name6
B 1 Name2 Name5 Name7
答案 0 :(得分:0)
如果这对于sql server你可以尝试:
;with cte as(
select *,row_number() over(partition by status order by Date desc) as rn from table
)
select status,id,col1,col2,col3 from cte where rn=1