首页 | IT科技 | 外语学习 | 论文大全 | 设计学院 | 管理营销 | 健康频道 | 美食天下 | 财经股市 | 资讯下载 | 论坛 | 博客
IT首页 | 前沿 | 基础 | 接入 | 交换 | 路由 | 安全 | 存储 | 传输 | 数据库 | 网管 | 方案 | 建站 | 编程 | 技巧 | RFC |
 
您现在的位置: 中华学习网 >> IT >> 数据库 >> Oracle >> 文章正文
[转贴]如何正确利用Rownum来限制查询所返回的行数?
it.no1edu.net 佚名 不详 2006-12-15【字体:



如何正确利用Rownum来限制查询所返回的行数? 
软件环境: 
1、Windows NT4.0+ORACLE 8.0.4
2、ORACLE安装路径为:C:\ORANT

含义解释: 
1、rownum是oracle系统顺序分配为从查询返回的行的编号,返回的第一行分配的是1,第二行是2,
  依此类推,这个伪字段可以用于限制查询返回的总行数。
2、rownum不能以任何基表的名称作为前缀。 
使用方法: 
现有一个商品销售表sale,表结构为:
month    char(6)      --月份
sell    number(10,2)   --月销售金额

create table sale (month char(6),sell number);
insert into sale values('200001',1000);
insert into sale values('200002',1100);
insert into sale values('200003',1200);
insert into sale values('200004',1300);
insert into sale values('200005',1400);
insert into sale values('200006',1500);
insert into sale values('200007',1600);
insert into sale values('200101',1100);
insert into sale values('200202',1200);
insert into sale values('200301',1300);
insert into sale values('200008',1000);
commit;

SQL> select rownum,month,sell from sale where rownum=1;(可以用在限制返回记录条数的地方,保证不出错,如:隐式游标)

   ROWNUM MONTH       SELL
--------- ------ ---------
        1 200001      1000

SQL> select rownum,month,sell from sale where rownum=2;(1以上都查不到记录)

没有查到记录

SQL> select rownum,month,sell from sale where rownum>5;
(由于rownum是一个总是从1开始的伪列,Oracle 认为这种条件不成立,查不到记录)


没有查到记录

只返回前3条纪录
SQL> select rownum,month,sel

[1] [2] [3] [4] [5] [6] 下一页


 

文章录入:anycall    责任编辑:anycall 

  • 上一篇文章:

  • 下一篇文章:
  • 赞助商链接



    娱乐资讯推荐
    搜索您感兴趣的内容
    Google
     
    普通文章[组图]下一代思科服务器负载均衡(SLB)架构
    推荐文章logminer使用步骤二(分析DML操作)
    推荐文章如何消除Oracle数据库的安全隐患(1)
    推荐文章Oracle数据库的备份及恢复策略研究
    推荐文章Oracle 连接常见错误及解决方法
    推荐文章Oracle 存储过程返回结果集
    推荐文章Oracle 9.2.0.1在hpux下的安装过程
    推荐文章Oracle导出备份和导入恢复自动产生sql源代码
    推荐文章Oracle Pro*C/C++游标和存储过程性能测试报告
    推荐文章安装文档ORACLE9i for sun solaris
     
    (只显示最新10条。评论内容只代表网友观点,与本站立场无关!)