读书人

追加同列的内容

发布时间: 2012-12-16 12:02:32 作者: rapoo

累加同列的内容


create table test
(
t1 int ,
t2 nvarchar(50)
)


insert into test values(1,'a'),(1,'b'),(1,'c'),(2,'a'),(2,'a'),(3,'c')

用function 返回 1的 a;b;c;
[最优解释]


create function getT(@id int)
returns nvarchar(50)
begin
declare @a nvarchar(50)
select @a=''
select @a=@a+t2+';' from test where t1=@id
return @a
end

select dbo.getT(1)

[其他解释]

select * into #myTest from test with(nolock)
alter #myTest add lj varchar(500)
declare @lj varchar(500)
set @lj=''
while exists (select top 1 lj from #myTest where lj is null)
begin
select top(1000) * into #a from #myTest
update #myTest set lj=lj+ddd fom #a where #a.t1<#myTest.t1
drop table #a
drop table #myTest
end

有错误,自己改吧,大概这样可以实现

读书人网 >SQL Server

热点推荐