ORACLE 分页和行限制

行限制:示例 (此语法从12C版本开始支持)

以下语句返回具有最低employee_id的 5 名员工

复制代码
SELECT employee_id, last_name 
  FROM Employees 
  ORDER BY employee_id 
  FETCH FIRST 5 ROWS ONLY; 

EMPLOYEE_ID LAST_NAME 
----------- ------------------------- 
        100 King 
        101 Kochhar 
        102 De Haan 
        103 Hunold 
        104 Ernst
复制代码

以下语句返回具有最低employee_id的接下来 5 名员工

复制代码
SELECT employee_id, last_name 
  FROM Employees 
  ORDER BY employee_id 
  OFFSET 5 ROWS FETCH NEXT 5 ROWS ONLY; 

EMPLOYEE_ID LAST_NAME 
----------- ------------------------- 
        105 Austin 
        106 Pataballa 
        107 Lorentz 
        108 Greenberg 
        109 Faviet
复制代码

以下语句返回工资最低的 5% 的员工:

复制代码
SELECT employee_id,last_name,salary 
  FROM 雇员
  ORDER BY 薪水
  FETCH FIRST 5 PERCENT ROWS ONLY;
EMPLOYEE_ID LAST_NAME SALARY 
----------- ------------------------- ---------- 
        132奥尔森 2100 
        128 马克尔 2200 
        136 Philtanker 2200 
        127 兰德里 2400 
        135 Gee 2400 
        119 Colmenares 2500
复制代码

 由于WITH TIES已指定,以下语句返回薪水最低的员工的 5%,以及与上例中提取的最后一行薪水相同的所有其他员工:

复制代码
SELECT employee_id、last_name、salary 
  FROM 雇员
  ORDER BY 薪水
  FETCH FIRST 5 PERCENT ROWS WITH TIES; 

EMPLOYEE_ID LAST_NAME SALARY 
----------- ------------------------- ---------- 
        132 Olson 2100 
        128 Markle 2200 
        136 Philtanker 2200 
        127 Landry 2400 
        135 Gee 2400 
        119 Colmenares 2500 
        131 Marlow 2500 
        140 Patel 2500 
        144 Vargas 250
        182 沙利文 2500 
        191 帕金斯 2500
复制代码

 

posted @   lybingyu  阅读(131)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)
点击右上角即可分享
微信分享提示