用SQL将查询出来的多列的值拼接成一个字符串


MySQL中:

-- 单列拼接,先查出一行,再加上逗号,接着拼接 查出的下一行
select group_concat(E.SUPPORT)
from ENGINES E
where E.XA IN('YES','NO')
--结果如下:YES,YES,YES,YES,YES,YES,DEFAULT,YES


-- 将查询的结果中的 "," 号,替换成 "**" 号 
select REPLACE(group_concat(E.SUPPORT),',','**')
from ENGINES E
where E.XA IN('YES','NO')
--结果如下:YES**YES**YES**YES**YES**YES**DEFAULT**YES


-- 将查询的结果中 重复 的记录 去掉,只剩一条记录,然后再拼接
select group_concat(DISTINCT(E.SUPPORT))
from ENGINES E
where E.XA IN('YES','NO')
--结果如下:YES,DEFAULT


-- 多列拼接,同一行的先拼接,再加上逗号,接着拼接下一行
select group_concat(E.ENGINE,E.SUPPORT)
from ENGINES E
where E.XA IN('YES','NO')
--结果如下:MRG_MYISAMYES,MyISAMYES,BLACKHOLEYES,CSVYES,MEMORYYES,ARCHIVEYES,InnoDBDEFAULT,PERFORMANCE_SCHEMAYES

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM