Oracle数据库,SELECT查询结果时,有些情况下需要将多条数据,同一字段进行拼接。例如在学生信息和成绩表中,关联查询会返回多条记录,多条记录只是成绩字段不同,其他相同,这是我们就需要将多条记录合并成一条,将成绩字段进行拼接。
解决方法:
用聚合函数,然后使用 wmsys.wm_concat(拼接字段) 方法
示例:
select classcode,wmsys.wm_concat(xsqd) as xsqd
from zylife.xzsale E
where E.classcode IN( 'AA7101',
'EL9912') group by classcode
结果:
可以通过replace 函数改变连接符
示例: select replace(wm_concat(拼接字段),',','|') from test;
一个朋友新做的公众号,帮忙宣传一下,会不定时推送一些开发中碰到的问题的解决方法,以及会分享一些开发视频。资料等。请大家关注一下谢谢: