这是牛客网上在线编程中《数据库SQL实战》中的题,其实做起来都挺简单的,只是不常写,每次用时去百度。所以一直就没记住。
前几天接到了个电话面试,结果面试官问到数据库的时候一时间想不起来了。虽然面试官说没关系,但是自己还是决定把一些常用的SQL语句记住,免得以后再出现类似的尴尬。
好了,言归正传。
一、LIMIT子句
LIMIT子句用于规定要返回的记录的条数。对于拥有成千上万条记录的大型数据表来说,LIMIT就显得非常有用了。
当要求返回前几行或者中间某几行记录的时候,我们就可以运用LIMIT子句了。
二、LIMIT 语法
SELECT * from 表名 LIMIT 开始位置,行数
其中,开始位置默认是0。LIMIT语句可以接受一个或两个参数,参数必须是一个整数常量。(开始位置和行数,必须是整数常量)第一个参数指定第一个返回记录行的偏移量,也就是返回记录的开始行位置;第二个参数指定返回的记录行数。
注意:开始位置是0二不是1。
三、例子
SELECT * FROM table LIMIT 5,10
查询结果:返回第六行开始的10行记录(6-15行)
四、特殊
为了检索从某一行开始的所有记录行,可以指定第二个参数为-1
例如:SELECT * FROM table LIMIT 95,-1
查询结果:96行开始的所有记录
如果只给定一个参数,它表示返回最大的记录行数目
例如:SELECT * FROM table LIMIT 5
查询结果:返回前5行记录,等价于SELECT * FROM table LIMIT 0,5
五、查找入职员工时间排名倒数第三的员工的所有信息
原始表:
```
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`));
```
入职时间倒数第三,先按入职时间由大到小排列
SELECT * FROM employees order by hire_date DESC
然后从第三条记录开始,选取一条记录,也就是倒数第三条。
SELECT * from employees order by hire_date DESC LIMIT 2,1
![这里写图片描述](https://img-blog.csdn.net/20180809180527269?watermark/2/text/aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L3UwMTQ2Nzc4NTU=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70)
查找入职员工时间排名倒数第三的员工所有信息
最新推荐文章于 2022-07-09 10:09:59 发布