给定netezza不支持聚合时的first和last,如何继续?

nzkunb0c  于 2021-07-24  发布在  Java
关注(0)|答案(2)|浏览(333)

我想将数据分组到一个名为custid的列中,并选择他们的第一个或最后一个抵押贷款,即使抵押贷款是在同一天发起的。你在内特扎是怎么做到的?在ms-access中,我通常使用第一个或最后一个聚合函数。
数据如下:

CustID  mortgageID  pass_dt

101      090234W    1-23-1989

101      103120X    5-20-2020

101      103121V    5-20-2020

所以在这里我想要第二个或第三个记录,但不是两个都当额外标准通过时。
非常感谢!

ni65a41a

ni65a41a1#

如果需要整个记录,请使用窗口函数:

select t.*
from (select t.*, row_number() over (partition by custid order by pass_dt desc) as seqnum
      from t
     ) t
where seqnum = 1
h79rfbju

h79rfbju2#

select CustID, max(mortgageID), max(pass_dt) from t1 group by 1;

相关问题