日期:2014-05-18  浏览次数:20539 次

请大家帮忙,难题
有如下查询到的记录:、
select     name   from   table1
结果:
a1
a2
a3
定义个变量@STR   varchar(200)
我想要得到@STR
想要的结果是:print   @STR    
显示:a1,a2,a3


------解决方案--------------------
将查询出来的一列结果显示在一个单元格里

declare @name varchar(8000)
set @name= ' '
select @name=@name+字段
from 表
print @name
------解决方案--------------------
declare @STR varchar(200)
set @str = ' '
select @str = @str + ', '+name from tabel1
set @str = stuff(@str,1,1, ' ')

print @str
------解决方案--------------------
create function fn_test()
returns VARCHAR(50)
as
begin
declare @str varchar(50)
set @str = ' '
select @str = @str + ', ' + name from table
set @str= stuff(@str,1,1, ' ')
return @str
end

go

select dbo.fn_test() from table