SQL Server:多行到一列

时间:2021-07-03 01:31:03

I have following table:

我有以下表格:

 TXT_Nr |   TXTL_LineNr    |    TXTL_String |   TXTL_Lgt|
 -------|------------------|----------------|-----------|
 10001  |   1              |    hello,      |    6      |
 10001  |   2              |    my name     |    7      |
 10001  |   N-lines can be |     ...        |    ...    |

Next result required:

需要下一个结果:

TXT_Nr  | TXTL_String 
--------|---------------
10001   | hello, my name

1 个解决方案

#1


1  

Using STUFF and GROUP BY method to concatenate string.

使用STUFF和GROUP BY方法连接字符串。

SELECT TXT_Nr , STUFF( (SELECT ',' + TXTL_String FROM #Table Inr WHERE 
Inr.TXT_Nr = otr.TXT_Nr FOR XML PATH('')),1,1,'')
FROM #Table Otr
GROUP BY TXT_Nr

#1


1  

Using STUFF and GROUP BY method to concatenate string.

使用STUFF和GROUP BY方法连接字符串。

SELECT TXT_Nr , STUFF( (SELECT ',' + TXTL_String FROM #Table Inr WHERE 
Inr.TXT_Nr = otr.TXT_Nr FOR XML PATH('')),1,1,'')
FROM #Table Otr
GROUP BY TXT_Nr