使用 FOR XML PATH 進行資料合併

本篇教你如何使用 FOR XML PATH 的 T-SQL 指定進行資料合併

資料如下:

Contact

Id Name
1 Wesley
2 Smart

ContactPhoneNumber

Id PhoneNumber ContactId
1 0987654321 1
2 0987654322 1
3 0987654323 2

預計輸出如下:

Id Name PhoneNumbers
1 Wesley 0987654321,0987654322,
2 Smart 0987654323

SQL 語法

SELECT c.Id, c.Name,
	(
		SELECT PhoneNumber + ','
		FROM ContactPhoneNumber
		WHERE ContactId = c.Id
		FOR XML PATH('')
	) AS PhoneNumbers
FROM Contact c