http://blog.csdn.net/lovelichao12/article/details/51098105
工作中经常遇到很多需求是这样的,根据条件汇总某些字段.
1、原始数据是这样的,如图:
2、要求显示成这样,如图:
3、具体实现是这样的,也就不废话,看完例子都能懂:
select phone, listagg(log_name, ',') within group(order by phone) logName
from int_phone
where phone = '13350162230'
group by phone
4、需要注意的事项如下:
- 必须得分组,也就是说group by是必须的。
- listagg函数的第一个参数是需要显示的字段,也就是log_name;第二个参数是数值之间的分隔符;同时还需要进行排序和分组within
group (order by name)