我试图找到一种方法来从一个字段中获取最大日期,然后删除重复项以从另一个字段中获取那些日期的最大日期。 到目前为止,我已经设法获得了有效日期的最大值,但是需要从这些值中获得最大时间戳以消除重复。 这是我到目前为止的内容:
SELECT
a2.CUST_ID
, Address
, Effective_Date --DATE variable
, Timestamp_Entry --DATETIME variable
FROM
(SELECT
CUST_ID
, MAX (Effective_Date) as Most_Effective_Date
FROM Address_Table
GROUP BY CUST_ID) a1
JOIN Address_Table a2
ON a1.CUST_ID = a2.CUST_ID and a1.Most_Effective_Date = a2.Effective_Date
(某些时间戳记条目可能是生效日期较旧的较新条目,这就是为什么生效日期优先,然后时间戳记应删除重复项的原因
答案 0 :(得分:0)
我想这就是你想要的:
select a.*
from (select a.*,
row_number() over (partition by cust_id order by effective_date desc, timestamp_entry desc) as seqnum
from address_table a
) a
where seqnum = 1;
这将基于两列返回每个客户的“最新”地址。