Это один из возможных подходов:
Таблица:
CREATE TABLE Data (
col1 nvarchar(50),
col2 nvarchar(50)
)
INSERT INTO Data
(col1, col2)
VALUES
(N'xyz', N'abc'),
(N'pqr', N'uvw')
Статус:
SELECT
Col1 = STUFF((SELECT CONCAT(',', col1) FROM Data FOR XML PATH(''),TYPE).value(N'.','nvarchar(max)'), 1, 1, ''),
Col2 = STUFF((SELECT CONCAT(',', col2) FROM Data FOR XML PATH(''),TYPE).value(N'.','nvarchar(max)'), 1, 1, '')
Результат:
Col1 Col2
xyz,pqr abc,uvw
Примечания:Если вы используете SQL Server 2017+, вы можете использовать STRING_AGG()
:
SELECT
STRING_AGG(col1, N',') AS col1,
STRING_AGG(col2, N',') AS col2
FROM Data