当前位置: 代码迷 >> Oracle技术 >> oracle 分割字符串 regexp_substr,该如何解决
  详细解决方案

oracle 分割字符串 regexp_substr,该如何解决

热度:97   发布时间:2016-04-24 08:20:00.0
oracle 分割字符串 regexp_substr
表数据如下:
ids               id           
3,4,6             5
23,24,26,27   28

想要使用一个sql,将ids拆分后查询到如下记录。请教如何实现。
ids               id
3           5
4           5
6           5
23           28
24           28
26           28
27           28
------解决方案--------------------
select ids, id from(
  select regexp_substr(ids, '[^,]+',1,lvl) ids, lvl, id from t,
  (select level lvl from dual connect by
  level < =(select max(length(regexp_replace(ids,'[^,]','')))+1 max_tokens from t))
) where ids is not null order by id, lvl;
  相关解决方案