--多行數據合併列node
SELECT B.主號,LEFT(副號列表,LEN(副號列表)-1) as 副號列表 FROM ( SELECT 主號, (SELECT 副號+',' FROM tmp3 WHERE 主號=A.主號 FOR XML PATH('')) AS 副號列表 FROM tmp3 A GROUP BY 主號 )Bxml
--列數據分拆多行數據
SELECT A.主號,B.value as 副號 FROM (
SELECT Id,[副號列表] = CONVERT(xml,'<root><v>'+REPLACE([副號列表],' ,','</v><v>')+'</v></root>')FROM AB
) A OUTER APPLY (
SELECT value = N.v.value ('.','varchar(100)') FROM A.[副號列表].nodes ('/root/v') N( v)
) Barc