【问题标题】:tsql order by with distinct for xml pathtsql order by with distinct for xml 路径
【发布时间】:2021-02-10 18:37:41
【问题描述】:

我有一个查询,稍后我会使用它来执行动态数据透视。我想在执行不同的操作之前订购此查询。我怎么能做到这一点?每当我订购它时,它都会完全打破独特性。

    DECLARE @cols NVARCHAR(max);
SET @cols = STUFF
(
    (SELECT distinct ',' + c.[PivotColumnTitle]
        FROM [myTable] c
        WHERE c.Id = @idInput
        AND c.IsPivotVisible = 1
              --order by c.PivotColumnOrder
        FOR XML PATH(''), TYPE
    ).value('.', 'NVARCHAR(MAX)') 
    ,1,1,''
)

【问题讨论】:

    标签: tsql stored-procedures pivot sql-order-by distinct


    【解决方案1】:

    试试这个:

    DECLARE @cols NVARCHAR(max);
    
    SET @cols = STUFF
    (
        (
            SELECT ',' + c.[PivotColumnTitle]
            FROM [myTable] c
            WHERE c.Id = @idInput
                AND c.IsPivotVisible = 1
            GROUP BY c.[PivotColumnTitle]
            order by MAX(c.PivotColumnOrder)
            FOR XML PATH(''), TYPE
        ).value('.', 'NVARCHAR(MAX)') 
        ,1,1,''
    )
    

    【讨论】:

      猜你喜欢
      • 2013-10-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多