鉴于 Netezza 在聚合时不支持 First 和 Last,如何进行?

Given Netezza does not support First and Last when aggregating, how to proceed?

我想将一些名为 CustID 的列的数据和 select 他们的第一笔或最后一笔抵押贷款分组,即使这些抵押贷款是在同一天发起的。你如何在 Netezza 中做到这一点?在 MS Access 中,我通常为此使用 First 或 Last 聚合函数。

数据是这样的:

CustID  mortgageID  pass_dt

101      090234W    1-23-1989

101      103120X    5-20-2020

101      103121V    5-20-2020

所以在这里我想要第二个或第三个记录,但不是两个都作为额外标准 pass_dt = 5-20-2020.

非常感谢!

如果你想要整条记录,使用window函数:

select t.*
from (select t.*, row_number() over (partition by custid order by pass_dt desc) as seqnum
      from t
     ) t
where seqnum = 1
select CustID, max(mortgageID), max(pass_dt) from t1 group by 1;