select * from (select id, rownum rownum_ from (SELECT id FROM t1)) where rownum_ <= 20 and rownum_ > 10;如果id是字符串型则正常,但如果id是数字型,则得出的结果不是实际的数据,而是和rownum一个的数字,如下:
ID ROWNUM_
---------- ----------
11 11
12 12
13 13
14 14
15 15
16 16
17 17
18 18
19 19
20 20上面只是查id,如果再加查一列,查出的id数据就正常了:
select * from (select id, deptid, rownum rownum_ from (SELECT id, deptid FROM t1)) where rownum_ <= 20 and rownum_ > 10; ID DEPTID ROWNUM_
---------- ---------- ----------
3900 2 11
3901 2 12
3902 2 13
3903 2 14
3904 2 15
3905 2 16
3906 2 17
3907 2 18
3908 2 19
3909 16 20
ID ROWNUM_
---------- ----------
11 11
12 12
13 13
14 14
15 15
16 16
17 17
18 18
19 19
20 20上面只是查id,如果再加查一列,查出的id数据就正常了:
select * from (select id, deptid, rownum rownum_ from (SELECT id, deptid FROM t1)) where rownum_ <= 20 and rownum_ > 10; ID DEPTID ROWNUM_
---------- ---------- ----------
3900 2 11
3901 2 12
3902 2 13
3903 2 14
3904 2 15
3905 2 16
3906 2 17
3907 2 18
3908 2 19
3909 16 20
解决方案 »
- 谁能帮我分析下这条sql语句
- 问个SQL效率的问题
- 问一个OTL的问题,菜鸟级的
- oracle 的实例,我实在理解不了,谁能给我说明一下,谢谢!!
- 高手请进:为什么Connection refused?我在用下面的jsp语句连接oracle9数据库时总是报错Connection refused
- 请问各位大虾,ALTER SYSTEM SET EVENTS ‘10231 trace name context forever,level 10’;这条语句怎么理解呀
- 请问那位有关于做oracle standby的资料.
- 关于OracleDeveloper的问题
- 急急!oracle8.04小问题??????
- null的问题
- 请大家帮忙来检查一句SQL万分感谢!
- 使用spool时,显示“当前未假脱机”
y.*
from (select /*+ first_rows */ rid
from (select /*+ first_rows */
rowid rid,
rownum rn
from t1
where rownum<=20)
where rn>=11) x,
t1 y
where x.rid=y.rowid;
select * from (select fee3, rownum rownum_ from (SELECT fee3 FROM tb)) where rownum_ <= 10 and rownum_ > 3;fee3 rownum_
10 4
20 5
20 6
10 7
12 8
2 9
select * from (select id, rownum rownum_ from (SELECT id FROM t1)) where rownum_ <= 20 and rownum_ > 10;
是否与
select * from (select id, deptid, rownum rownum_ from (SELECT id, deptid FROM t1)) where rownum_ <= 20 and rownum_ > 10;
的执行计划不一样。猜测前一个用的是INDEX FAST FULL SCAN,后一个是table full scan。
select * from (select id, rownum rownum_ from FROM t1) where rownum_ <= 20 and rownum_ > 10