簡體   English   中英

如何在SQL Server中串聯不同的行值?

[英]How to concatenate different row values in SQL Server?

我正在嘗試從此查詢中連接不同的“ Z”值。此方法有效,但速度太慢,我的表有1M條記錄。

任何想法如何使這個表演?

SELECT distinct A,B,C,D,E,F,G
    ,(ISNULL(STUFF((SELECT distinct ',' + RTRIM(Z)
    from DBO.TABLA a
    WHERE Z is not null and a.A = A
    and B =  a.B and C =  a.C
    and D =  a.D and E =  a.E
    and F =  a.F and G =  a.G
    FOR XML PATH(''), TYPE).value('.', 'NVARCHAR(MAX)'), 1, 1, '')
    , ''))                      
     as blabla

您可以加快索引查詢的速度。 我會建議在tabla(b, c, d, e, f, g, z)上建立索引。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM