oracle数据中一个字段中存在多个值 进行分组统计查询

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/panhaigang123/article/details/83270793

如图我有这样的两条数据  我要根据unit_name这个字段中的多个值进行分组统计数量

我要显示的格式如下

单位名称        数量
测试单位        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

效果如下

本文章参考 https://blog.csdn.net/java_hq/article/details/77503307?tdsourcetag=s_pctim_aiomsg

猜你喜欢

转载自blog.csdn.net/panhaigang123/article/details/83270793