編寫乙個 sql 查詢,獲取 employee 表中第二高的薪水(salary) 。
+----+--------+
| id | salary |
+----+--------+
| 1 | 100 |
| 2 | 200 |
| 3 | 300 |
+----+--------+
例如上述 employee 表,sql查詢應該返回 200 作為第二高的薪水。如果不存在第二高的薪水,那麼查詢應返回 null。
+---------------------+
| secondhighestsalary |
+---------------------+
| 200 |
+---------------------+
思路:用distinct去重,然後用limit取出特定大小的那乙個元素,注意元素不存在的情況。
select (
select distinct
salary
from employee
order by salary desc limit 1,1)
as secondhighestsalary
方法二:
用ifnull函式:
select
ifnull(
(select distinct
salary
from employee
order by salary desc
limit 1 , 1),
null) as secondhighestsalary
176 第二高的薪水
編寫乙個 sql 查詢,獲取employee表中第二高的薪水 salary id salary 1 100 2 200 3 300 例如上述employee表,sql查詢應該返回200作為第二高的薪水。如果不存在第二高的薪水,那麼查詢應返回null。secondhighestsalary 200 思...
176 第二高的薪水
編寫乙個 sql 查詢,獲取 employee 表中第二高的薪水 salary idsalary 1100 2200 3300 例如上述 employee 表,sql查詢應該返回 200 作為第二高的薪水。如果不存在第二高的薪水,那麼查詢應返回 null。secondhighestsalary 20...
176 第二高的薪水
sql架構 編寫乙個 sql 查詢,獲取employee表中第二高的薪水 salary id salary 1 100 2 200 3 300 例如上述employee表,sql查詢應該返回200作為第二高的薪水。如果不存在第二高的薪水,那麼查詢應返回null。secondhighestsalary...