zoukankan      html  css  js  c++  java
  • Oracle数据库的伪列

    伪列Oracle 中伪列就像一个表列(表中的列),但是它并没有存储在表中,伪列可以从表中查询,但不能插入、更新和删除它们的值

    常用的伪列有ROWID和ROWNUM。

    ROWID的使用——快速删除重复的记录

    解析:ROWID是数据的详细地址,通过rowidoracle可以快速的定位某行具体的数据的位置。

    ROWID可以分为物理rowid和逻辑rowid两种。

    普通的表中的rowid是物理rowid,索引组织表(IOT)rowid是逻辑rowid

    当表中有大量重复数据时,可以使用ROWID快速删除重复的记录。

    查询语句:

    select rowid,rownum from  student

    ROWNUM

    ROWNUM 是查询返回的结果集中行的序号,可以使用它来限制查询返回的行数

      通过测试可知,Rownum只能对=1<N进行筛选,如果>M不能筛选,如何规避。

    通过子查询构建临时表,让伪列Rownun称为临时表中的列,然后限定条件使用伪列的

    别名。

    利用伪列查询伪列编号等于2的数据

    select *from

    (

    select id,name,rownum rn from   student

    ) temp

    where rn =2

    利用伪列查询第4-6条数据

    select *from

    (

     select temp.*,rownum rn from 

     (

      select *from student

     ) temp

      where rownum<=6

    )where rn>=4

  • 相关阅读:
    基于java对doc文档的分词,导入数据库
    软件架构 软件质量属性(淘宝)
    c/c++ Java python
    阅读架构漫谈心得体会
    关于ubuntu16.4在vmware中打开只显示桌面,桌面闪烁的问题
    暑假总结07
    暑假总结06
    RandomStringUtils
    spring-data-elasticsearch
    Socket和ObjectOutputStream问题
  • 原文地址:https://www.cnblogs.com/sujulin/p/8047773.html
Copyright © 2011-2022 走看看