oracle 切割字符按串完成列转行

来源:互联网 发布:知牛财经 编辑:程序博客网 时间:2024/05/20 16:52

目标: 切割字符串完成列转行(一列转成多行)
要点:regexp_substr 函数,connect by 子句,LEVEL 伪列
说明:加入伪列是为了说明 level 在语句中充当的责任。学过java或者C语言的可以认为level就是,i =1,i++。

方法一

select regexp_substr('110,112,113,114','[^,]+',1,LEVEL),LEVEL from dual CONNECT BY  LEVEL <5 ;

结果:

110 1112 2113 3114 4

方法二

SELECT regexp_substr('110,112,113,114','[^,]+',1,LEVEL),LEVEL FROM dual CONNECT BY regexp_substr('110,112,113,114','[^,]+',1,LEVEL) IS NOT NULL;

结果

110 1112 2113 3114 4
0 0
原创粉丝点击