变更前数据结构:
GROUP PRE COUR NEXT
AAAAAA 0 1 2
AAAAAA 1 2 999999
BBBBBB 0 6 1
BBBBBB 1 5 2
BBBBBB 2 3 4
BBBBBB 3 4 999999
BBBBBB 5 2 3
BBBBBB 6 1 5
CCCCCC 0 9 1
CCCCCC 1 2 3
CCCCCC 2 3 4
CCCCCC 3 4 5
CCCCCC 4 5 6
CCCCCC 5 6 8
CCCCCC 6 8 999999
CCCCCC 9 1 2
DDDDDD 0 1 999999
EEEEEE 0 1 999999
FFFFFF 0 1 999999
GGGGGG 0 2 1
GGGGGG 2 1 999999
HHHHHH 0 1 4
HHHHHH 1 4 2
HHHHHH 2 3 999999
HHHHHH 4 2 3变更后数据结构:
GROUP PRE COUR NEXT
AAAAAA 0 1 2
AAAAAA 1 2 999999
BBBBBB 0 6 1
BBBBBB 6 1 5
BBBBBB 1 5 2
BBBBBB 5 2 3
BBBBBB 2 3 4
BBBBBB 3 4 999999
CCCCCC 0 9 1
CCCCCC 9 1 2
CCCCCC 1 2 3
CCCCCC 2 3 4
CCCCCC 3 4 5
CCCCCC 4 5 6
CCCCCC 5 6 8
CCCCCC 6 8 999999
DDDDDD 0 1 999999
EEEEEE 0 1 999999
FFFFFF 0 1 999999
GGGGGG 0 2 1
GGGGGG 2 1 999999
HHHHHH 0 1 4
HHHHHH 1 4 2
HHHHHH 4 2 3
HHHHHH 2 3 999999每一个GROUP 先头Record前项: 0
最后Record后项: 999999最好用SQL文解决。
谢谢
GROUP PRE COUR NEXT
AAAAAA 0 1 2
AAAAAA 1 2 999999
BBBBBB 0 6 1
BBBBBB 1 5 2
BBBBBB 2 3 4
BBBBBB 3 4 999999
BBBBBB 5 2 3
BBBBBB 6 1 5
CCCCCC 0 9 1
CCCCCC 1 2 3
CCCCCC 2 3 4
CCCCCC 3 4 5
CCCCCC 4 5 6
CCCCCC 5 6 8
CCCCCC 6 8 999999
CCCCCC 9 1 2
DDDDDD 0 1 999999
EEEEEE 0 1 999999
FFFFFF 0 1 999999
GGGGGG 0 2 1
GGGGGG 2 1 999999
HHHHHH 0 1 4
HHHHHH 1 4 2
HHHHHH 2 3 999999
HHHHHH 4 2 3变更后数据结构:
GROUP PRE COUR NEXT
AAAAAA 0 1 2
AAAAAA 1 2 999999
BBBBBB 0 6 1
BBBBBB 6 1 5
BBBBBB 1 5 2
BBBBBB 5 2 3
BBBBBB 2 3 4
BBBBBB 3 4 999999
CCCCCC 0 9 1
CCCCCC 9 1 2
CCCCCC 1 2 3
CCCCCC 2 3 4
CCCCCC 3 4 5
CCCCCC 4 5 6
CCCCCC 5 6 8
CCCCCC 6 8 999999
DDDDDD 0 1 999999
EEEEEE 0 1 999999
FFFFFF 0 1 999999
GGGGGG 0 2 1
GGGGGG 2 1 999999
HHHHHH 0 1 4
HHHHHH 1 4 2
HHHHHH 4 2 3
HHHHHH 2 3 999999每一个GROUP 先头Record前项: 0
最后Record后项: 999999最好用SQL文解决。
谢谢
解决方案 »
- 冷或热备份数据库文件后,为什么要归档当前日志组呢?
- 求关于Oracle语法及原理的电子书
- 紧急求救:ORA-00093: shared_pool_reserved_size must be between 5000 and 8388608错误
- 求 Toad for oracle 9.6的帮助文档
- 我在weblogic 的日志里发现这个 OALL8 is in an inconsistent state
- 一个关于SQL语句效率的小问题,请赐教
- oracle中如何把含有相同字段的表都查询出来??
- 请问有显示表空间(tablespace)的命令吗?怎样创建表空间?
- 在sqlplus中怎样才能看到一个表的某个字段的外键关联的相关信息
- weblogic10.3.5配置数据源报错
- 分解字段内容!急
- 急~~~~~~~~~~~~~~~~~~~~~~~~~~关于oracle的jobs 时间间隔设置
你的方法不可以,
BBBBBB 0 6 1
BBBBBB 6 1 5
BBBBBB 1 5 2
BBBBBB 5 2 3
BBBBBB 2 3 4
BBBBBB 3 4 999999
你在说说你要求的排序规律~~
说说我这个方法哪里不合乎需求~
select * from yourtable order by GROUP,PRE,NEXT 如果还不行~就只好等大牛来了~~
SELECT DISTINCT *
FROM TT
START WITH PRE = 0
CONNECT BY PRIOR CONR = PRE
ORDER BY GROUPS, LEVEL;
FROM (SELECT *
FROM TT
WHERE AA = '本店略略称09'
AND BB = 'X'
AND CC = '081210140215'
ORDER BY
GROUP) T
START WITH (T.PRE = 0)
CONNECT BY NOCYCLE T.PRE = PRIOR T.COUR
AND T.COUR = PRIOR T.NEXT
AND T.GROUP = PRIOR T.GROUP