【问题标题】:I need to group 2 rows two 1 and concatenate values of one column in SQL SERVER 2008我需要将 2 行分组为两个 1 并连接 SQL SERVER 2008 中一列的值
【发布时间】:2017-04-09 03:58:50
【问题描述】:

所以情况就是这样,我的这张表有多个记录,但有几条记录具有相同的值,只有一列不同

ID  NAME    SELCODE RANGE
111 DANIEL  123123  YES
111 DANIEL  123123  NO

我想将此差异合并到一行中,但两个值都来自RANGE 列,如下所示。

ID  NAME    SELCODE RANGE
111 DANIEL  123123  YES/NO

【问题讨论】:

    标签: sql sql-server database sql-server-2008 duplicates


    【解决方案1】:

    肯定有很多这样的例子,但这里有一种方法可以做到:

    SELECT
        DISTINCT
        t.ID
        ,t.Name
        ,t.SELCODE
        ,STUFF(
            (SELECT '/' + RANGE
            FROM
                Table t2
            WHERE
              t.Id = t2.ID
              AND t.Name = t2.Name
              AND t.SELCODE = t2.SELCODE
            FOR XML PATH(''))
    
            ,1,1,'') as RANGE
    FROM
        Table t
    

    【讨论】:

    • @DanielIglesiasValenzuela 欢迎您的感恩节快乐
    猜你喜欢
    • 1970-01-01
    • 2014-05-11
    • 2019-03-27
    • 2021-10-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-03-14
    • 2014-04-04
    相关资源
    最近更新 更多