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

oracle 一条话语实现将“17,20,23”拆分成‘17’,‘20’,‘23’的集合

2012-09-19 
oracle 一条语句实现将“17,20,23”拆分成‘17’,‘20’,‘23’的集合在oracle中,使用一条语句实现将“17,20,23”拆

oracle 一条语句实现将“17,20,23”拆分成‘17’,‘20’,‘23’的集合
在oracle中,使用一条语句实现将“17,20,23”拆分成‘17’,‘20’,‘23’的集合

[解决办法]
SELECT REGEXP_SUBSTR(TEXT,
'[0-9]+',
1,
RN) TEXT
FROM (SELECT '17,20,23' AS TEXT FROM DUAL) T1,
(SELECT LEVEL RN
FROM DUAL
CONNECT BY ROWNUM <=
(SELECT LENGTH(TEXT) -
LENGTH(REPLACE(TEXT,
',',
'')) + 1
FROM (SELECT '17,20,23' AS TEXT
FROM DUAL))) T2
[解决办法]

SQL code
select regexp_substr('17,20,23', '[^,]+',1,rownum) rfrom dual connect by rownum<=length('17,20,23')-length(replace('17,20,23', ',', ''))+1; 

热点排行