limit和offset
1、当 limit后面跟一个参数的时候,该参数表示要取的数据的数量
例如 select* from user limit 3 表示直接取前三条数据
2、当limit后面跟两个参数的时候,第一个数表示要跳过的数量,后一位表示要取的数量,例如
select * from user limit 1,3;
就是跳过1条数据,从第2条数据开始取,取3条数据,也就是取2,3,4三条数据
3、当 limit和offset组合使用的时候,limit后面只能有一个参数,表示要取的的数量,offset表示要跳过的数量 。
例如select * from user limit 3 offset 1;表示跳过1条数据,从第2条数据开始取,取3条数据,也就是取2,3,4三条数据
ifnull()函数
例如 找第二高薪资的问题中 解决 'NULL' 问题的方式
:是使用下面的 IFNULL 函数。 如果不为 NULL,IFNULL 函数会返回第一个参数,否则返回第二个参数。
这为我们提供了正确的解决方案,即一行包含 NULL (如果没有这样的第 2 高薪资),而不仅仅是一个空表。
语句使用:
select
ifnull(
(select distinct e.salary
from Employee e
order by e.salary
limit 1 offset 1)
,null) as SecondHighestSalary;
ok!狠狠又学到了捏