多个分隔符字符串拆分

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
--利用instr函数查找分隔符第一次出现的位置<em>instr(p.str_text, ':',1,1)<br>原表数据:</em><em id="__mceDel"> </em>--第二次拆分按冒号':'分隔的字符串
select
     p.str_text,
     TRIM(substr(p.str_text, 0, instr(p.str_text, ':')-1)) as KM1,
     substr(p.str_text, instr(p.str_text, ':',1,1)+1,instr(p.str_text, ':',1,2)-instr(p.str_text, ':',1,1)-1) AS KM2,
     substr(p.str_text, instr(p.str_text, ':',1,2)+1,instr(p.str_text, ':',1,3)-instr(p.str_text, ':',1,2)-1) AS KM3,
     substr(p.str_text, instr(p.str_text, ':',1,3)+1,length(p.str_text)-instr(p.str_text, ':',1,3)) AS KM4
 
from (
--第一次拆分按分号';'分隔的字符串
select
   distinct regexp_substr(pp.str_text, '[^;]+', 1, level) as str_text
  from 
  fine_report_temp pp
  where  pp.data_type='1'
 connect by regexp_substr(pp.str_text, '[^;]+', 1, level) is not null
 )  p

  结果如下:

 

posted @   没有龅牙的兔子  阅读(48)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示