大战熟女丰满人妻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>開始的行號

全部教程
主站蜘蛛池模板: 色福利网| 欧美日韩国产另类一区二区三区 | 羞羞视频在线观看 | 亚洲欧美综合人成野草 | 91在线视频免费看 | 久久精品久久久久 | 久久99精品久久久久久臀蜜桃 | 久久一级视频 | 日本三级11k影院在线 | 国产精品青草久久久久婷婷 | 草草在线播放 | 欧美综合网| 999精品视频在线观看 | 深夜福利国产精品亚洲尤物 | 一本大道香蕉大vr在线吗视频 | 日韩 欧美 中文字幕 不卡 | 日韩欧美色综合 | 怡红院成人永久免费看 | 亚洲国产系列一区二区三区 | 亚洲成年人在线观看 | 一区二区三 | 日本高清一 | 久草热久草视频 | 成人久久精品 | 日韩在线欧美在线 | 国产综合精品 | 色偷偷尼玛图亚洲综合 | 奇米影视第四色777 奇米影视第四色7777 | 久久天天躁狠狠躁狠狠躁 | 五月激情久久 | 伊人365影院 | 欧美图片一区二区三区 | 欧美综合图区亚洲综合图区 | 免费毛片大全 | 波多野结衣久久高清免费 | 美女色影院 | 97视频免费播放观看在线视频 | 四虎影视4hutv最新地址在线 | 欧美激情精品久久久久久久九九九 | 欧美色欧美亚洲高清在线视频 | 国产成人成人一区二区 |