編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。
Id | Salary |
---|---|
1 | 100 |
2 | 200 |
3 | 300 |
例如上述 Employee 表,SQL查詢應該返回 200 作爲第二高的薪水。如果不存在第二高的薪水,那麼查詢應返回 null。
SecondHighestSalary |
---|
200 |
代碼:
select IFNULL((select Distinct Salary from Employee order by Salary DESC limit 1,1),null) as SecondHighestSalary
知識點:
1.MySQL IFNULL() 函數
IFNULL(expression, alt_value)
如果第一個參數的表達式 expression 爲 NULL,則返回第二個參數的備用值(alt_value)。
2.SQL SELECT DISTINCT 語句
在表中,一個列可能會包含多個重複值,有時您也許希望僅僅列出不同(distinct)的值。
DISTINCT 關鍵詞用於返回唯一不同的值。
實例:
Employee 表
Id | Salary |
---|---|
1 | 100 |
2 | 200 |
3 | 300 |
4 | 200 |
執行語句:select Distinct Salary from Employee
結果:
Salary |
---|
100 |
200 |
300 |
3.SQL ORDER BY 關鍵字
order by 關鍵字: 通過關鍵字(字段名)來查詢
desc: 表示倒序
4.MYSQL LIMIT 用法
-
limit N : 返回 N 條記錄
-
offset M : 跳過 M 條記錄, 默認 M=0, 單獨使用似乎不起作用
-
limit N,M: 相當於 limit M offset N , 從第 N 條記錄開始, 返回 M 條記錄
5.select······as·····
select······as 別名
給查詢出的結果指定別的名字