《数据库SQL实战》取倒数第三

来源:互联网 发布:一搜网络同志建站 编辑:程序博客网 时间:2024/05/18 22:41

此题来自于nowcoder,在此记录一下limit的用法,加深印象。
题目:

查找入职员工时间排名倒数第三的员工所有信息
CREATE TABLE employees (
emp_no int(11) NOT NULL,
birth_date date NOT NULL,
first_name varchar(14) NOT NULL,
last_name varchar(16) NOT NULL,
gender char(1) NOT NULL,
hire_date date NOT NULL,
PRIMARY KEY (emp_no));

解析:
入职排名倒数第三,说明入职时间数值较大,因此按降序desc排序,选择limit两个参数的函数,格式为:limit 偏移量 所取行数
结果如下:

select * from employees order by hire_date desc limit 2,1;

注意:limit偏移量初始值为0
这里总结一下limit的用法:
LIMIT 子句可被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。
1. 如果只给定一个参数,它表示返回最大的记录行数目。

SELECT * FROM table LIMIT 5; //检索前 5 个记录行

2.如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目

SELECT * FROM table LIMIT 5,10; //检索记录行6-15 引用块内容