如何在逗号分隔的字符串中获取多列数据?

时间:2010-07-30 13:30:47

标签: csv sql-server-2000

我收到的数据如

Result
------
 10
 23 
 21

但我希望以下列格式获取数据。

Result
------
10, 23, 21

如何在查询中获取? 提前感谢您提供任何帮助:)

4 个答案:

答案 0 :(得分:3)

不使用存储过程的示例代码:) ...

USE AdventureWorks
GO
-- Check Table Column
SELECT Name
FROM HumanResources.Shift
GO
-- Get CSV values
SELECT SUBSTRING(
(SELECT ',' + s.Name
FROM HumanResources.Shift s
ORDER BY s.Name
FOR XML PATH('')),2,200000) AS CSV
GO

更多相关信息:

SQL SERVER – Comma Separated Values (CSV) from Table Column

编辑:

对于 SQL-Server 2000 ,请看一下:

How to Format Query Result as Comma Separated Values (CSV)

答案 1 :(得分:2)

答案 2 :(得分:1)

在PostgreSQL中:

SELECT company_id,array_to_string(array_agg(employee),',') 来自mytable GROUP BY company_id;

How to concatenate strings of a string field in a PostgreSQL 'group by' query?

答案 3 :(得分:1)

这是一种方式, 有一个学生表,其studentName列的数据类型为nvarchar(50),然后在查询后将以逗号分隔的值为您提供学生姓名,

DECLARE @VALUES NVARCHAR(1000)
SELECT @VALUES = COALESCE(@VALUES + ',','') + CAST(STUDENTNAME AS NVARCHAR(50)) FROM STUDENT
SELECT @VALUES