Oracle Database 12c Row Limiting Clause
In Database 12c, to limit the number of rows in a query can be simplified by ANSI fetch first/offset keyword via Oracle SQL row limiting clause.
在Database 12c里,通过Oracle SQL 行限制子句来限制一个查询的行数能够用ANSI的 fetch first/offset 关键字简化了.
For example, fetch the top 3 "oldest" employees:
例如,获取"最老"的前3名员工
select *
from employees
order by hire_date
fetch first 3 rowsonly;
And, keep the ties:
保持连结
select *
from employees
order by hire_date
fetch first 3 rows with ties;
Or skip the first 3 employees, what we need is rank 4 to 6:
或者跳过前3名员工,我们需要的是排在第4到6的:
select *
from employees
order by hire_date
offset 3 rows
fetch next 3 rows only;
May be limiting row count is way too precise, percentage style is preferred sometime =)
或者限制行数这种方法太准确了,有时更偏向于百分数类型
select *
from employees
order by hire_date
fetch first 10 percent rows only;
Todd