oracle字段中的多个值进行分组统计数量

我是tofacebook,今天给大家谈谈java开发的那些事,在我们实际开发过程往往会遇到各种各样的问题,那遇到问题我们要想办法去解决和汇总,以便下次能找的到,如图我有这样的两条数据 我要根据unit_name这个字段中的多个值进行分组统计数量.

wx:pingan-soft

例子1:

我要显示的格式如下
在这里插入图片描述

单位名称 数量
测试单位 1
dd 2
幼儿园 2

SQL语句如下

SELECT t.UNIT_NAME, count(*) FROM (select pkid,
regexp_substr(UNIT_NAME, ‘[^,]+’, 1, level) UNIT_NAME
from FS_UNIT_INFO
connect by level <= regexp_count(UNIT_NAME, ‘,’) + 1
and pkid = prior pkid
and prior dbms_random.value is not NULL) t GROUP BY t.UNIT_NAME

效果如下
在这里插入图片描述

例子2:

拆分前数据:

在这里插入图片描述

拆分脚本:

select or_pid,
regexp_substr(or_rule_id, ‘[^,]+’, 1, level) or_rule_id
from x_265_gd_644746
connect by level <= regexp_count(or_rule_id, ‘,’) + 1
and or_pid = prior or_pid
and prior dbms_random.value is not null;
拆分后的数据:

在这里插入图片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章