1. 程式人生 > 其它 >ORACLE 分頁和行限制

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

由於WITHTIES已指定,以下語句返回薪水最低的員工的 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
凡哥,別他媽吹牛逼了