一、查找第n高的薪水
CREATE FUNCTION getNthHighestSalary(N INT) RETURNS INT
BEGIN
set N=N-1;
RETURN (
select distinct(salary) from employee order by salary desc limit N,1
);
END
因为limit分页从0开始,要取第一个 就是0,1(这点还是不明白)
limit offset:\
select * from table limit 2 offset 1;
//从第1条(不包括)数据开始取出2条数据,limit后面跟的是2条数据,offset后面是从第1条开始读取,即读取第2,3条
二、查找第二高的薪水
select max(Salary) as SecondHighestSalary
from employee
where
salary<(select max(salary) from employee)