drop table tb drop function f_str CREATE TABLE tb(id int,pid int) INSERT tb SELECT 1,1 UNION ALL SELECT 1,2 UNION ALL SELECT 1,3 UNION ALL SELECT 2,1 UNION ALL SELECT 2,2 UNION ALL SELECT 3,1--合并处理函数 CREATE FUNCTION f_str(@id int) RETURNS varchar(1000) AS BEGIN DECLARE @re varchar(100) SELECT @re=isnull(@re+',','')+CAST(pid as varchar) FROM tb WHERE id=@id RETURN @re ENDselect distinct id,dbo.f_str(id) as 'fid' from tb
这个问题N次了.CREATE FUNCTION f_str(@id int) RETURNS varchar(1000) AS BEGIN DECLARE @re varchar(100) SELECT @re=isnull(@re+',','')+CAST(pid as varchar) FROM tb WHERE id=@id RETURN @re ENDselect distinct id,dbo.f_str(id) as 'fid' from tb
这个问题N次了. CREATE FUNCTION f_str(@id int) RETURNS varchar(1000) AS BEGIN DECLARE @re varchar(100) SELECT @re=isnull(@re+',','')+CAST(pid as varchar) FROM tb WHERE id=@id RETURN @re END select distinct id,dbo.f_str(id) as 'fid' from tb
drop table tb
drop function f_str
CREATE TABLE tb(id int,pid int)
INSERT tb SELECT 1,1
UNION ALL SELECT 1,2
UNION ALL SELECT 1,3
UNION ALL SELECT 2,1
UNION ALL SELECT 2,2
UNION ALL SELECT 3,1--合并处理函数
CREATE FUNCTION f_str(@id int)
RETURNS varchar(1000)
AS
BEGIN
DECLARE @re varchar(100)
SELECT @re=isnull(@re+',','')+CAST(pid as varchar)
FROM tb
WHERE id=@id
RETURN @re
ENDselect distinct id,dbo.f_str(id) as 'fid'
from tb
http://topic.csdn.net/u/20080614/17/22e73f33-f071-46dc-b9bf-321204b1656f.html
RETURNS varchar(1000)
AS
BEGIN
DECLARE @re varchar(100)
SELECT @re=isnull(@re+',','')+CAST(pid as varchar)
FROM tb
WHERE id=@id
RETURN @re
ENDselect distinct id,dbo.f_str(id) as 'fid'
from tb
RETURNS varchar(1000)
AS
BEGIN
DECLARE @re varchar(100)
SELECT @re=isnull(@re+',','')+CAST(pid as varchar)
FROM tb
WHERE id=@id
RETURN @re
END select distinct id,dbo.f_str(id) as 'fid'
from tb