如下表
A AA1
A AA2
B BB1
B BB2
相应记录合并,并把字段二的合在一块,得出的结果为
A AA1,AA2
B BB1,BB2
--测试数据
create table csdn(id int,txt varchar(10))
insert csdn
select 1,'a' union all
select 1,'b' union all
select 1,'c' union all
select 2,'aa' union all
select 2,'bb' union all
select 2,'cc' union all
select 3,'aaa' union all
select 3,'bbb'
select * from csdn
go
create function Gettxt(@id int) --------此@id 对应于 表中的id
returns varchar(8000)
as
begin
declare @s varchar(8000)
set @s=''----
select @s=@s +',' +txt from csdn where id=@id
--return @s
return stuff(@s,1,1,'')----return stuff(@s,1,1,'')
end
go
select id,dbo.Gettxt(id) txt from csdn group by id -------------user function ,用于选择列表,和系统function用法一样
go
drop function Gettxt ----delete function
drop table csdn --------delete tabname
go