SELECT MAX(salary) as '第二高'
FROM employee
WHERE salary<(SELECT MAX(salary)
FROM employee
)

 

解题思路:

  使用自查询:

    表中 薪水值 小于 自己表中 最大薪水值 的 最大的那个值 就是第二高

 

 

 

SELECT IFNULL(
(SELECT DISTINCT
salary
FROM employee
ORDER BY salary
DESC LIMIT 1,1),
0)
AS '第二高'

这里边的‘’0‘’ 的意思是:查询不到的情况下 想要返回的 什么值可以是null 也可以是 字符串

 posted on 2019-09-03 16:30  来呀~快活啊  阅读(431)  评论(0编辑  收藏  举报