用户定义函数,用于返回连接在一起的单个列的值

时间:2011-08-13 06:35:53

标签: sql sql-server-2008

我正在使用SQL Server 2008,并且想要一个用户定义的函数来连接单个列的值,逗号分隔并返回它。

例如,包含以下行的表:

column1
---------
head
shoulders
knees
toes

该函数将返回单个值:head, shoulders, knees, toes

1 个答案:

答案 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