LIMIT OFFSET 子句

来源:SQL Limit 子句

1. SQL LIMIT 子句示例

SELECT 
    employee_id, first_name, last_name
FROM
    employees
ORDER BY first_name
LIMIT 5 OFFSET 3;

结果如下图所示:

img

如果使用的是 MySQL,则可以使用LIMIT OFFSET子句的较短形式。

SELECT 
    employee_id, first_name, last_name
FROM
    employees
ORDER BY first_name
LIMIT 3 , 5;

2. 使用 SQL LIMIT 获取具有最高或最低值的前 N 行

可以使用LIMIT子句获取具有最高或最低值的前 N 行。例如,以下查询获得薪资最高的前五名员工。

SELECT 
    employee_id, first_name, last_name, salary
FROM
    employees
ORDER BY salary DESC
LIMIT 5;

首先,ORDER BY子句按工资按降序对员工进行排序,然后LIMIT子句限制从查询返回的五行。

为了获得薪资最低的前五名员工,可以按升序(ASC)对员工进行排序。

3. 获取具有第 N 个最高值的行

假设必须得到公司薪水第二高的员工。请使用LIMIT OFFSET子句,如下所示。

SELECT 
    employee_id, first_name, last_name, salary
FROM
    employees
ORDER BY salary DESC
LIMIT 1 OFFSET 1;
posted @ 2022-10-23 18:45  Higurashi-kagome  阅读(31)  评论(0编辑  收藏  举报