oracle根据人员汇总案件数

oracle数据库案件表每个案件都有一个或者多个人员归属,字段是案件,人员

格式是这样的,例如:001|张三,002|李四,003|王五或者001|张三

如何根据人员汇总案件数

FineReport 冰雨咖啡 发布于 2022-11-10 15:24 (编辑于 2022-11-10 15:25)
1min目标场景问卷 立即参与
回答问题
悬赏:3 F币 + 添加悬赏
提示:增加悬赏、完善问题、追问等操作,可使您的问题被置顶,并向所有关注者发送通知
共2回答
最佳回答
0
CD20160914Lv8专家互助
发布于2022-11-10 15:26(编辑于 2022-11-10 15:34)

SELECT  

A.dept_code as 原始数据,

REGEXP_SUBSTR(A.DEPT_CODE, '[^,]+', 1, Level, 'i') as 拆分后

  FROM (SELECT '001|张三,002|李四,003|王五' as DEPT_CODE

          FROM dual

         ) A

CONNECT BY Level<= LENGTH(A.DEPT_CODE) -

           LENGTH(REGEXP_REPLACE(A.DEPT_CODE, ',', '')) + 1

image.png

  • 冰雨咖啡 冰雨咖啡(提问者) 案件是有多个归属的,一个归属时是数据是001|张三,三个归属时数据是001|张三,002|李四,003|王五
    2022-11-10 15:29 
  • CD20160914 CD20160914 回复 冰雨咖啡(提问者) 你自己excel中模拟一下数据到底是如何,最终要如何的结果。excel模拟一下字段对应的内容。最后要什么结果。
    2022-11-10 15:30 
  • 冰雨咖啡 冰雨咖啡(提问者) 如何把一条数据比如有三个归属的分成三条数据,并把其中人名提取出来作为一个字段
    2022-11-10 15:30 
  • CD20160914 CD20160914 回复 冰雨咖啡(提问者) 看上面。你再截取包一层子查询就可以了。
    2022-11-10 15:34 
最佳回答
0
luojian0323Lv7资深互助
发布于2022-11-10 15:27
  • 3关注人数
  • 330浏览人数
  • 最后回答于:2022-11-10 15:34
    请选择关闭问题的原因
    确定 取消
    返回顶部