sqlserver中如何循环表,读取表中的一列数据
用sql server 查找的结果存放在一个临时表#T中,结果如下所示:name 是列名,下面的三行是临时表#T中的数据
name
安神补脑液
四件套
山菇菌
我想在上面的基础上获得这样的结果:
安神补脑液,四件套,山菇菌 结果返回一行数据。
不知道用sql 语句怎么写,谢谢
[解决办法]
create table #T(name nvarchar(30))
insert into #T
select '安神补脑液' union all
select '四件套' union all
select '山菇菌'
select distinct STUFF((select ','+name from #t for xml path('')),1,1,'') as name
from #T
/*
name
安神补脑液,四件套,山菇菌
*/
create table #T(name nvarchar(30))
insert into #T
select '安神补脑液' union all
select '四件套' union all
select '山菇菌'
select DISTINCT
stuff((select ','+name from #T b
ORDER BY GETDATE()
for xml path('')),1,1,'') 'name'
from #T a
/*
name
----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
安神补脑液,四件套,山菇菌
*/