1 Star 0 Fork 29

tracese / notebook

forked from JustryDeng / notebook 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
克隆/下载
[07]伪列.md 1.47 KB
一键复制 编辑 原始数据 按行查看 历史
邓沙利文 提交于 2022-03-29 17:30 . oracle相关知识点整理

伪列

简述

  • 伪列就像表中的一个列一样,不过它并没有存储在表中。

  • 伪列可以从表中查询,但是不能插入、更新和删除他们的值。

常用的伪列

常用的伪列有:

  • ROWID:ROWID是表中行的存储地址,该地址可以唯一的标识数据库中的一行;可以使用ROWID快速的定位表中的某一行。

    相关说明、示例:

    • ROWID的格式:AAAR3S AAE AAAACX AAA,其中,AAAR3S数据对象编号AAE文件编号AAAACX块编号AAA行编号
    • ROWID的简单用法示例:select rowid,s.* from student s
    • 一个Oracle数据库中(不论有多少张表),每一行的ROWID都是互不相同的。即:ROWID是每一行的"身份 证"
  • ROWNUM:ROWNUM是对查询结果的排序序号

    相关说明、示例:

    • ROWNUM的简单用法示例:select rownum,s.* from student s
    • ROWNUM的生成时机为:where条件之后,order by排序之前
    • 因为ROWNUM是查询结果的排序序号,所以当查询指定行的rownum时,需要这么来实现,如:select * from(select rownum r,s.* from student s) where r=3
    • 因为rownum是在order排序之前生成的,所以如果我们想order排序之后,rownum顺序不乱的话,可以这么实现:select rownum,s.* from (select * from student order by studentno desc) s
1
https://gitee.com/Trace001/notebook.git
git@gitee.com:Trace001/notebook.git
Trace001
notebook
notebook
master

搜索帮助