加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

oracle listagg() 函数用法(参照例子)

发布时间:2020-12-12 13:24:03 所属栏目:百科 来源:网络整理
导读:工作中经常遇到很多需求是这样的,根据条件汇总某些字段,比如公司有三个投资平台,同一个客户拿手机号在三个平台都注册了,但注册过的用户名不一样,显示的时候需要根据手机号显示所有注册过的名称。(我用的是oracle数据库) 1、原始数据是这样的,如图: ?

工作中经常遇到很多需求是这样的,根据条件汇总某些字段,比如公司有三个投资平台,同一个客户拿手机号在三个平台都注册了,但注册过的用户名不一样,显示的时候需要根据手机号显示所有注册过的名称。(我用的是oracle数据库)

1、原始数据是这样的,如图:

?

?

2、要求显示成这样,如图:

?

?

3、具体实现:

select phone,listagg(log_name,‘,‘) within group(order by phone) logName
? from int_phone
?where phone = ‘13350162230‘
?group by phone

4、需要注意的事项如下:??? (1).?必须得分组,也就是说group ?by是必须的。??? (2).?listagg函数的第一个参数是需要显示的字段,也就是log_name;第二个参数是数值之间的分隔符;同时还需要进行排序和分组within group (order by name)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读