【问题标题】:Cloned IDs using joins in SQL [duplicate]在 SQL 中使用连接克隆的 ID [重复]
【发布时间】:2018-11-24 12:35:08
【问题描述】:

我有一张如下表:

在此表中,对于同一个 CID,CVID 会被克隆多次。所以对于最新的 CVID,我想显示最旧的日期。我想要的输出应该是:

Rextester 链接:http://rextester.com/ENVH45805

【问题讨论】:

    标签: sql sql-server sql-server-2008 join


    【解决方案1】:

    您可以使用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        
    

    【讨论】:

    • 谢谢,成功了!
    猜你喜欢
    • 2010-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多