考试网 >> IT认证 >> Oracle >> Oracle指导 >> Oracle入门教程,新手必读

Oracle入门教程,新手必读

发布时间:2006-06-28 10:02     点击:
分页:上一页  1 2 3 [4] 5 6 7 8 9 10  下一页

   where rank = &N; 

假如要返回前5条记录: 

   select * from tablename where rownum<6;(或是rownum <= 5 或是rownum != 6) 

   假如要返回第5-9条记录: 

   select * from tablename 

   where … 

   and rownum<10 

   minus 

   select * from tablename 

   where … 

   and rownum<5 

   order by name 

   选出结果后用name排序显示结果。(先选再排序) 

   注意:只能用以上符号(<、<=、!=)。 

   select * from tablename where rownum != 10;返回的是前9条记录。 

   不能用:>,>=,=,Between...and。由于rownum是一个总是从1开始的伪列,Oracle 认为这种条件 不成立,查不到记录. 

   另外,这个方法更快: 

   select * from ( 

   select rownum r,a from yourtable 

   where rownum <= 20 

   order by name ) 

   where r > 10 

   这样取出第11-20条记录!(先选再排序再选) 

   要先排序再选则须用select嵌套:内层排序外层选。 

   rownum是随着结果集生成的,一旦生成,就不会变化了;同时,生成的结果是依次递加的,没有1就永远不会有2! 

   rownum 是在 查询集合产生的过程中产生的伪列,并且如果where条件中存在 rownum 条件的话,则: 

   1: 假如 判定条件是常量,则: 
分页:上一页  1 2 3 [4] 5 6 7 8 9 10  下一页
版权申明:未经书面授权请勿转载本站信息!!作品版权归所属媒体与作者所有!!
发表评论: 匿名发表 用户名: 查看评论
您将承担一切因您的行为、言论而直接或间接导致的民事或刑事法律责任
留言板管理人员有权保留或删除其管辖留言中的任意内容
本站提醒:不要进行人身攻击。谢谢配合。
在本站搜索相关信息
2003-2005 Ksw123.com All Rights Reserved. - TOP
Copyright © 2006 Ksw123.com. All rights reserved.中国考题网 版权所有