sql - 在 SQL 中使用连接克隆的 ID
问题描述
我有一个如下表:
在此表中,对于同一个 CID,CVID 会被克隆多次。所以对于最新的 CVID,我想显示最旧的日期。我想要的输出应该是:
Rextester 链接:http ://rextester.com/ENVH45805
解决方案
您可以使用row_nunmber
窗口函数为同一行中的每一行分配一个数字cvid
,然后取第一个:
SELECT cid, cvid, cloned_cvid, _date
FROM (SELECT cid, cvid, cloned_cvid, _date,
RANK() OVER (PARTITION BY cvid ORDER BY _date ASC) AS rn
FROM #temp1) t
WHERE rn = 1