vlambda博客
学习文章列表

第二高的薪水 | MySQL

题目:


解法一:

思路1:去重的基础之上,找出薪水最高的值,然后再找出小于最高值的薪水中的最大值。


第一步:先找出最高值的薪水(去重)


第二高的薪水 | MySQL


第二步:找出小于最高值薪水中的最大值。


第二高的薪水 | MySQL


第四步:将结果命名为   SecondHighestSalary


第二高的薪水 | MySQL



解法二:将薪水降序排列,然后选出第二行的值,就是第二值。


ifnull (a,b)  如果value1 不为空,则返回a;如果value 1 为空,则返回b


order by 将列表进行排序;desc降序;asc升序;


limit n   表示查询结果返回前n条数据;

offset m   表示跳过m条数据

limit n offset m  表示跳过m条数据,返回n条数据。


第一步:去重,降序排序


第二高的薪水 | MySQL


第二步:跳过1条数据,返回1条数据,就是第二条数据。



第三步:判断是否存在第二高薪水,存在就返回薪水,不存在就返回空值。


创作不易,点个赞就是对作者最大的鼓励。