所以我在Toad中有一个像这样的数据框:
implements Comparable<Name>
我的目标是只返回每个date1最近的行。因为11/1/12只有一排,这是我最近的一排。但是对于date1中的11/1/13,有两行具有相同的日期。因此,我接下来要看一下date2并说好,我最近的日期是13年7月12日,所以我只想返回该行而不是两者都返回。
我得到的数据框如下:
ID Total_Amt date1 date2 Name1 Name2
1 16 11/1/12 6/30/12 BOB JON
1 17 11/1/13 7/12/13 BILL JACK
1 17 11/1/13 7/1/13 BEN ADA
1 18 11/1/14 11/5/14 JEFF ALAN
1 18 11/1/14 11/1/14 JERI FRANK
我只关心与每个日期有关的最新行,因此,如果date1中有多个具有相同日期的日期,那么我希望它也通过使用date2并查看来仅获取最新的行该字段中date1中找到的日期的最新信息。
答案 0 :(得分:1)
使用row_number()
窗口功能
select ID ,Total_Amt,date1,date2,Name1,Name2 from
(
select ID ,Total_Amt,date1,date2,Name1,Name2,
row_number() over(order by date1 desc,date2 desc) rn from table_name
) t where rn=1