关于oracle 一个字段包含多种类型、分隔字符串,group by的问题

 

如果一个表中某个如datarule_types字段,包含多种类型,并且是用符号分隔的。若此时要统计每个类型的数量可以使用如下代码

 

 

SELECT t.DATARULE_TYPE, count(*) FROM (select id,
       regexp_substr(DATARULE_TYPES, '[^,]+', 1, level) DATARULE_TYPE
  from datarule
  where 1=1
connect by level <= regexp_count(DATARULE_TYPES, ',')+1
       and id = prior id
       and prior dbms_random.value is not NULL) t GROUP BY t.DATARULE_TYPE

 

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