将检索出来的列按逗号拼接起来

Posted b小青青

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了将检索出来的列按逗号拼接起来相关的知识,希望对你有一定的参考价值。

 

 1 DECLARE  @tb TABLE(id int, value varchar(10)) 
 2 insert into @tb values(1, aa) 
 3 insert into @tb values(1, bb) 
 4 insert into @tb values(2, aaa) 
 5 insert into @tb values(2, bbb) 
 6 insert into @tb values(2, ccc) 
 7  
 8 -- 查询处理 
 9 SELECT * FROM(SELECT DISTINCT id FROM @tb) A OUTER APPLY( 
10         SELECT [values]= STUFF(REPLACE(REPLACE( 
11             ( 
12                 SELECT value FROM @tb N 
13                 WHERE id = A.id 
14                 FOR XML AUTO 
15             ), <N value=", ,), "/>, ‘‘) ,1,1,‘‘)
16 ) N

输出

id          values 

----------- ----------- 

1          aa,bb 

2          aaa,bbb,ccc 


SELECT STUFF((SELECT ‘,‘+name FROM 表名 for xml path(‘‘)),1,1,‘‘)

 

以上是关于将检索出来的列按逗号拼接起来的主要内容,如果未能解决你的问题,请参考以下文章

SQL查询以从逗号分隔的列中检索值[重复]

SQL拆分逗号分隔的字符串

sql查询出来的列转换为逗号隔开的字符串

PB数据窗口列手动移动后,数据的却顺序没变。咋把Excel杂乱无章的列按手动调整后的顺序导入数据库!!!

oracle 如何将一个字段里的值拆分为多个值显示出来

MySQL创建计算字段