大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Oracle教程
Oracle練習題

Oracle Rownum用法

Oracle提供了rownum,rownum是一個隱含的(查詢結果集)字段,rownum是一個行號,從1開始。

rownum隱含字段

select rownum, a.* from emp a;

取得前5條數據

select * from emp where rownum <=5;

取得大與第5條的所有數據

select * from emp where rownum >5;

以上語句,oracle不支持,oracle只支持rownum小于或小于等于的運算, 不支持大于或大于等于的運算。

取得薪水最好的前5名

select rownum, empno, ename, sal from emp where rownum<=5 order by sal desc;

上面的結果不正確,因為采用order by不會改變rownum,rownum的值在數據插入到表中時已經形成,正確使用的方式,將排序好的數據作為一張表來使用,這樣這個表的rownum是新形成的,所以可以保證它的順序是正確的,如下:

select empno, ename, sal 
from (select empno, ename, sal from emp order by sal desc)
where rownum <=5

采用rownum進行分頁

分頁主要是為了提高效率,一般采用數據庫的機制比較多,主要從數據庫表中定位記錄的開始位置結束位置,如每頁兩條數據:

第一頁:記錄1~2

第二頁:記錄3~4

。。。。。。。

因為rownum存在問題,所以需要采用三層的select嵌套完成分頁,嵌套的目的將rownum轉換成我們自己的字段,如:

select empno, ename, sal
from 
(
 select rownum r, empno, ename, sal 
 from 
  (
   select empno, ename, sal from emp order by sal desc
  )    
  where rownum <=5 
)where r>0

通用的分頁方法,使用的時候可以直接拷貝。只需要修改紅色字體的部分就可以了。

select *
from 
(
 select rownum r, t.* 
 from 
  (
    任意的SQL語句
  )  t  
  where rownum <=結尾的行號 
)where r>開始的行號

全部教程
主站蜘蛛池模板: 国产日本三级 | 精品亚洲永久免费精品 | 精品一区二区三区在线视频观看 | 欧美特黄一级大黄录像 | www亚洲成人 | 亚洲精品久久一区二区无卡 | 一本久道热中字伊人 | 国外成人免费高清激情视频 | 欧美日韩成人高清色视频 | 尹人香蕉99久久综合网站 | 日本裤袜xxxx视频 | 人人舔人人插 | 久久免费视频1 | 老司机精品在线播放 | 欧美日韩色 | 欧美黑人乱大交ⅹxxxxx | 男人都懂www深夜免费网站 | 久久综合在线 | 在线观看年轻的母亲 | 精品久久一区二区三区 | 午夜主播国产福利视频在线 | 国产在线色视频 | 奇米影视第四色888 奇米影视第四色首页 | 欧美jizzhd精品欧美4k | 国产自产拍精品视频免费看 | 亚洲国产成人精品女人久久久 | 免费黄色毛片 | 日本精品视频一视频高清 | 色婷婷色99国产综合精品 | 91亚洲精品 | 99精选视频 | 天天干天天操天天摸 | 最新视频 - 88av| 久久青草免费91线频观看不卡 | 久久99精品久久只有精品 | 欧洲成人全免费视频网站 | 伊人天天干 | 日韩欧美亚洲国产 | 欧美一级毛片一 | 中文字幕亚洲一区二区三区 | 亚洲综合网在线 |