小编典典

如何在SQL Server 2005中将多行合并为逗号分隔的列表?

sql

现在,我有一个像这样的SQL查询:

SELECT X, Y FROM POINTS

它返回结果如下:

X    Y
----------
12   3
15   2
18   12
20   29

我想将结果全部返回一行,就像这样(适合在HTML <AREA>标记中使用):

XYLIST
----------
12,3,15,2,18,12,20,29

有没有办法仅使用SQL来做到这一点?


阅读 166

收藏
2021-05-05

共1个答案

小编典典

DECLARE @XYList varchar(MAX)
SET @XYList = ''

SELECT @XYList = @XYList + CONVERT(varchar, X) + ',' + CONVERT(varchar, Y) + ','
FROM POINTS

-- Remove last comma
SELECT LEFT(@XYList, LEN(@XYList) - 1)
2021-05-05