oracle多行合并成一行自带函数

来源:互联网 发布:网络社交的利与弊英语 编辑:程序博客网 时间:2024/06/11 18:33
oracle
返回行数太多是个闹人的问题;其实取出来到 java(或者其他语言,原谅我是程度比较低程序员)中处理最好不过了,这里介绍个函数
oracle 提供了两个函数WMSYS.WM_CONCAT 和 ListAgg函数。
用函数WMSYS.WM_CONCAT 
例:  
      id  name 
       1   aa 
       2   bb 
       3   cc
要的结果是"aa,bb,cc"
(1)SQL:select WMSYS.WM_CONCAT(a.name) from user a  
结果:这样的话,查询出的:"aa,bb,cc"
(2)特殊:分隔符如果不需要用英文的逗号,需要改成别的符号比如分号的,可以用下面的方法替换下:
SQL:select replace(WMSYS.WM_CONCAT(a.name),',',';') from user a