MySQL找到员工表的第四高薪

时间:2018-03-31 17:25:45

标签: mysql database

如何从员工表中找到第n个最高薪水。

我也提供了在很短的时间内完成此SQL查询的最佳解决方案

2 个答案:

答案 0 :(得分:0)

SELECT DISTINCT salary
FROM employee e1
WHERE 4 = (
    SELECT count(DISTINCT salary)
    FROM employee e2 
    WHERE e1.salary <= e2.salary
);

如果你想获得第二高的薪水,那么用2替换4。

答案 1 :(得分:0)

您可以使用LIMIT:

SELECT DISTINCT(field_name) FROM table_name
ORDER BY field_name DESC
LIMIT 3,1