oracle 递归查询求出起点、终点问题的解决方法
2013-04-17 14:16
459 查看
有表如下:
SQL> select * from yu1;
COL1 COL2
---------- --------------------
2014 00000001
2014 00000002
2014 00000003
2014 00000004
2014 00000005
2014 00000009
2014 00000010
2013 00000013
2013 00000014
2013 00000015
2013 00000017
COL1 COL2
---------- --------------------
2013 00000018
2013 00000020
2013 00000021
欲求出下列结果
col1 start end
2014 00000001 00000005
2014 00000009 00000010
2013 00000013 00000015
2013 00000017 00000018
2013 00000020 00000021
SQL> select * from yu1;
COL1 COL2
---------- --------------------
2014 00000001
2014 00000002
2014 00000003
2014 00000004
2014 00000005
2014 00000009
2014 00000010
2013 00000013
2013 00000014
2013 00000015
2013 00000017
COL1 COL2
---------- --------------------
2013 00000018
2013 00000020
2013 00000021
欲求出下列结果
col1 start end
2014 00000001 00000005
2014 00000009 00000010
2013 00000013 00000015
2013 00000017 00000018
2013 00000020 00000021
select col1, min(col2) "start" , max(col2) "end" from yu1 a start with not exists (select 1 from yu1 b where b.col2 = a.col2 - 1) connect by prior a.col2 = a.col2 - 1 group by rownum - level, col1;
相关文章推荐
- Navicat Premium连接Oracle遇到的一些问题和其解决方法
- Oracle登陆问题解决方法总结
- 解决Windows 7下安装Oracle 11g相关问题的方法
- Oracle 10g及pro*c相关问题及解决方法
- 分页显示问题的解决方法(jsp,sqlserver,mysql,oracle)
- 简单方法-改变win7兼容性(SQLServer,Oracle)解决不能登录的问题
- ORACLE中一些问题的解决方法
- Windows 7下安装Oracle 11g相关问题解决方法
- oracle小数不显示“0”问题的解决方法
- Win7安装Oracle 11g出现的问题与解决方法
- Oracle卸载方法和在XP下装Oracle9i遇到安装磁盘交换区没有足够空间的问题解决办法
- Navicat Premium连接Oracle遇到的一些问题和其解决方法
- oracle分页查询结果集重复问题&解决方法
- Oracle常见问题及解决方法
- oracle 9i数据库连接问题解决方法
- Oracle 10g中跟EM有关的问题解决方法
- Oracle分页查询中排序与效率问题解决方法详解
- Windows 7下安装Oracle 11g相关问题解决方法
- oracle的SQL语句执行效率问题查找与解决方法
- ubuntu 11.10 server 安装 oracle10.2.0.1 步骤及问题解决方法