惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

B
Blog
A
About on SuperTechFans
Microsoft Security Blog
Microsoft Security Blog
Y
Y Combinator Blog
罗磊的独立博客
J
Java Code Geeks
人人都是产品经理
人人都是产品经理
MongoDB | Blog
MongoDB | Blog
The GitHub Blog
The GitHub Blog
G
Google Developers Blog
U
Unit 42
Microsoft Azure Blog
Microsoft Azure Blog
博客园 - Franky
Jina AI
Jina AI
F
Fortinet All Blogs
H
Help Net Security
B
Blog RSS Feed
H
Hackread – Cybersecurity News, Data Breaches, AI and More
Last Week in AI
Last Week in AI
博客园 - 司徒正美
云风的 BLOG
云风的 BLOG
M
MIT News - Artificial intelligence
C
Check Point Blog
GbyAI
GbyAI

博客园 - MyFavorite

成长、改变、突破 软件工程相关整理 INCLUDE COMMON FILES IN HTML USING JQUERY Oracle取TOP N条记录 use CheckBoxMultipleChoice in wicket 5个必须掌握的maven命令 根据对象名获取对象 外网SQL服务器设置 VB6.0调用SetTimer实现定时器 cmd命令控制台窗口一闪就消失解决办法 jdbc访问数据库 - MyFavorite - 博客园 java与MSSQL2000连接 - MyFavorite - 博客园 关于java CountDownLatch java InputStream读取数据问题 MyEclipse中防止代码格式化时出现换行的情况的设置 java监控多个线程的实现 TCP连接状态 Java定时器代码 java下的日期函数实现
Oracle:分割字符串
MyFavorite · 2012-10-29 · via 博客园 - MyFavorite

ids                           id

3,4,5                        7

13,14,15,16             17

想要使用sql,实现将ids按照逗号分割后查询到如下记录:

ids                           id

3                              7

4                              7

5                              7

13                            17

14                            17

15                            17

16                            17 

在Oracle9i以上版本中,可以使用regexp_substr实现。具体sql语句如下:

select id,ids from(

  select regexp_substr(ids, '[^,]+',1,lvl) ids, lvl, id from tbl,

  (select level lvl from dual connect by

  level < =(select max(length(regexp_replace(ids,'[^,]','')))+1 max_tokens from tbl))

) where ids is not null order by lvl