问题描述
Write a SQL query to get the second highest salary from the Employee
table.
+—-+——–+
| Id | Salary |
+—-+——–+
| 1 | 100 |
| 2 | 200 |
| 3 | 300 |
+—-+——–+
For example, given the above Employee table, the query should return 200
as the second highest salary. If there is no second highest salary, then the query should return null
.
+———————+
| SecondHighestSalary |
+———————+
| 200 |
+———————+
思路分析
选择输出第二高的工资,注意使用AS改变输出名称。
SELECT
(SELECT DISTINCT
Salary
FROM
Employee
ORDER BY Salary DESC
LIMIT 1 OFFSET 1) AS SecondHighestSalary;
时间复杂度: O(n)