Oracle学习XIV —— Oracle伪列

Oracle伪列

1.Oracle的伪列是Oracle表在存储的过程中或查询的过程中,表会有一些附 加列,称为伪列。
2.伪列就像表中的字段一样,但是表中并不存储。
3.伪列只能查询,不能增删改。
4.Oracle的伪列有:rowid、rownum。

Oracle rowid

1、Oracle表中的每一行在数据文件中都有一个物理地址, rowid 伪列返回的就是该行的物理地址。
2、使用 rowid 可以快速的定位表中的某一行。
3、rowid 值可以唯一的标识表中的一行。
4、通过 select 查询出来的rowid ,返回的就是该行数据的物理地址。

select t.*,t.rowid from stuinfo t ;

结果如下:
SQL查询结果

select t.*,t.rowid from stuinfo t where t.rowid='AAAShjAAEAAAAEFAAD';

结果如下:
通过rowid查询结果

Oracle rownum

1、Oracle rownum表示的Oracle查询结果集的顺序,rownum为每个查询结果集的行标识一个行号,第一行返回1,第二行返回2,依次顺序递增。
2、rownum与 rowid不同, rowid是插入记录时生成, rownum是查询数据时生成。
3、rowid标识的是行的物理地址。 rownum标识的是查询结果中的行的次序。
4、rownum经常用来限制查询的结果返回的行数,求前几行或前几名的数据。

select t.stuid,t.stuname,t.sex,t.classno,t.stuaddress ,rownum  from stuinfo t ;

结果如下:
SQL查询结果
返回学生信息表中(stuinfo)中学生年龄最低的前四位同学:

select *
  from (select t.stuid,
               t.stuname,
               t.sex,
               t.classno,
               t.stuaddress,
               t.age,
               rownum
          from stuinfo t
         order by t.age asc)
 where rownum <= 4;

结果如下:
年龄最低的前四位同学

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值