首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > oracle >

oracle 施用substr对一个字符串根据逗号来分段截取

2012-08-14 
oracle 使用substr对一个字符串根据逗号来分段截取有一个字符串abc,def,mns,opq,怎么能把他同过中间的‘,

oracle 使用substr对一个字符串根据逗号来分段截取
有一个字符串'abc,def,mns,opq',怎么能把他同过中间的‘,’截取成4个字符串abc、def、mns和opq了?

[解决办法]
select SUBSTR('abc,def,mns,opq',1,3)||'、'||SUBSTR('abc,def,mns,opq',5,7)||'、'||SUBSTR('abc,def,mns,opq',9,11)||'、'||SUBSTR('abc,def,mns,opq',13,15) FROM DUAL
[解决办法]

SQL code
with t1 as (     select 1 c1,'abc,def,mns,opq' c2 from dual )select distinct c1,replace(regexp_substr(c2,'[^,]+',1,level),',',' ') c2from t1 connect by level<=length(c2)-length(replace(c2,',',''))+1order by c1     c1    c2-------------------1    1    abc2    1    def3    1    mns4    1    opq 

热点排行