【问题标题】:How do I transform this data set using SQL? [duplicate]如何使用 SQL 转换此数据集? [复制]
【发布时间】:2019-08-27 03:54:43
【问题描述】:

如何编写将数据集 1 转换为数据集 2 的 SQL?

数据集 1

id  Name                    Home_Phone      Work_Phone      Mobile_Phone
--- ----------------------- ------------    ------------    ------------
44  Mary James              NULL            NULL            333-832-1066
44  Mary James              111-747-7048    NULL            NULL
46  James Smith             NULL            NULL            111-354-2092
46  James Smith             111-737-8936    NULL            NULL
45  Shelley Berlin          NULL            NULL            222-960-5115
45  Shelley Berlin          NULL            222-845-2422    NULL
39  Brad Saito              NULL            NULL            NULL
39  Brad Saito              Invalid         Invalid         Invalid
55  Debbie Peters           NULL            NULL            NULL
55  Debbie Peters           NULL            NULL            NULL
55  Debbie Peters           NULL            222-960-7778    NULL

数据集 2

id  Name                    Home_Phone      Work_Phone      Mobile_Phone
--- ----------------------- ------------    ------------    ------------
44  Mary James              111-747-7048    NULL            333-832-1066
46  James Smith             111-737-8936    NULL            111-354-2092
45  Shelley Berlin          NULL            222-845-2422    222-960-5115
39  Brad Saito              Invalid         Invalid         Invalid
55  Debbie Peters           NULL            222-960-7778    NULL

【问题讨论】:

    标签: sql-server


    【解决方案1】:

    这是您要使用聚合的地方。这假设您只有 1 行,每个 id 和名称组合都有一个值。

    select id
        , Name
        , HousePhone = MAX(Home_Phone)
        , WorkPhone = MAX(Work_Phone)
        , MobilePhone = MAX(Mobile_Phone)
    from YourTable
    group by id
        , Name
    

    【讨论】:

    • 感谢您的回复。我只需要被提醒如何使用 MAX() 折叠我的结果。
    【解决方案2】:

    如果您想将数据从一个数据集转移到另一个数据集,请使用 UPDATE 语句。

    【讨论】:

    • 这是评论而非答案。尝试回答更清晰的问题,直到您的代表足够高才能发表评论。
    猜你喜欢
    • 2021-04-10
    • 2021-05-23
    • 1970-01-01
    • 2011-06-28
    • 1970-01-01
    • 2020-12-23
    • 1970-01-01
    • 1970-01-01
    • 2015-12-15
    相关资源
    最近更新 更多