CREATE FUNCTION test (@id VarChar(32)) RETURNS VarChar(8000) as begin DECLARE @Result NVarChar(8000) SET @Result = '' BEGIN SELECT @Result = @Result + case when @Result <> '' then ',' else '' end+cast(id as varchar(50)) FROM company WHERE pid = @id END RETURN @Result end
2005 可以定义为MAX CREATE FUNCTION test (@id VarChar(32)) RETURNS VarChar(MAX) as begin DECLARE @Result NVarChar(8000) SET @Result = '' BEGIN SELECT @Result = @Result + case when @Result <> '' then ',' else '' end+cast(id as varchar(50)) FROM company WHERE pid = @id END RETURN @Result end