📜  PostgreSQL – LIMIT 与 OFFSET 子句(1)

📅  最后修改于: 2023-12-03 15:33:44.762000             🧑  作者: Mango

PostgreSQL – LIMIT 与 OFFSET 子句

在 PostgreSQL 中,LIMIT 和 OFFSET 是两个非常常用的关键字,用来限制 SELECT 查询的结果集。本文将介绍如何在 PostgreSQL 中使用 LIMIT 和 OFFSET 子句。

语法

LIMIT 子句用来限制 SELECT 查询返回的记录数,它的语法如下:

SELECT column1, column2, ...
FROM table_name
LIMIT [no of rows];

其中,no of rows 是返回的记录数,如果我们只想返回前 10 行记录,可以使用:

SELECT column1, column2, ...
FROM table_name
LIMIT 10;

OFFSET 子句用来跳过 SELECT 查询结果集中的前 N 行记录,其语法如下:

SELECT column1, column2, ...
FROM table_name
OFFSET [no of rows] ROWS;

其中,no of rows 是想跳过的记录数。如果我们想跳过前 10 行记录,可以使用:

SELECT column1, column2, ...
FROM table_name
OFFSET 10 ROWS;
例子

假设我们有一个表格名为 employees,其中包含员工的 ID(employee_id)、姓名(name)和工资(salary)等字段。现在我们想查询工资最高的前 10 个员工,可以使用以下 SQL 语句:

SELECT employee_id, name, salary
FROM employees
ORDER BY salary DESC
LIMIT 10;

如果我们想从第 11 名员工开始查询每个员工的姓名和工资,可以使用以下 SQL 语句:

SELECT name, salary
FROM employees
ORDER BY salary DESC
OFFSET 10 ROWS;
总结

LIMIT 和 OFFSET 是 PostgreSQL 中非常常用的两个关键字,用来限制 SELECT 查询的结果集和跳过结果集中的前 N 行记录。我们可以使用这两个关键字来实现分页查询等功能。在使用时,务必注意语法和参数的正确性。