我正在使用SQL Server 2008,并且想要一个用户定义的函数来连接单个列的值,逗号分隔并返回它。
例如,包含以下行的表:
column1
---------
head
shoulders
knees
toes
该函数将返回单个值:head, shoulders, knees, toes
答案 0 :(得分:3)
Concatenate many rows into a single text string?
的UDF版本CREATE FUNCTION [dbo].[udf_GetNumDaysInMonth] ()
RETURNS nvarchar(4000)
AS
BEGIN
DECLARE @str VARCHAR(4000)
SELECT @str= COALESCE(@str + ', ', '') + column_name FROM tablename ORDER BY column_name
return @str
END