首先,定义一个自定义函数,实现字符串合并create function fmerg(@fd varchar(10))
returns varchar(8000)
as
begin
declare @re varchar(8000)
set @re=''
select @re=@re+Field2 from TableA where Field1=@fd
set @re=right(@re,len(@re)-1)
return(@re)
end
go
returns varchar(8000)
as
begin
declare @re varchar(8000)
set @re=''
select @re=@re+Field2 from TableA where Field1=@fd
set @re=right(@re,len(@re)-1)
return(@re)
end
go
into TableB
from(select distinct Field1 from TableA) a--注意上面的调用方法,首先,得到不重复的Field1 ,再根据结果计算Field2
这样避免很多重复计算.
returns varchar(8000)
as
begin
declare @re varchar(8000)
set @re=''
select @re=@re+Field2 from TableA where Field1=@fd
return(@re)
end
go--调用:
select Field1,dbo.fmerg(Field1) from 表 group by Field1