1. 程式人生 > >Mysql 第二高的薪水

Mysql 第二高的薪水

問題描述:

編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary)
這裡寫圖片描述
例如上述 Employee 表,SQL查詢應該返回 200 作為第二高的薪水。如果不存在第二高的薪水,那麼查詢應返回 null,如下圖。
這裡寫圖片描述

問題解析:

  • 有可能存在相同薪水的情況,注意去重distinct
  • 給查詢的結果起別名 用as,語法:原列名 as 新列名
  • 分類order by,預設升序排列(ASC),降序排列(DESC)
  • 限制結果數量LIMIT,只有一個引數時,代表行數;2個引數時,LIMIT(偏移量,顯示行數),偏移量從0開始計數;返回第二條記錄,用 Limit 1,1
select
distinct Salary as SecondHighestSalary from Employee order by Salary DESC Limit 1,1;

輸出結果:
這裡寫圖片描述

  • 注意題目要求:如果不存在第二高的薪水,那麼查詢應返回 null;
  • 因此要用 IFNULL語法:IFNULL(A,B),如果不為空返回第一個引數A,為空返回引數B

完善上述SQL語句:

解答:

select IFNULL 
((select distinct Salary from Employee order by Salary DESC Limit 1,1),NULL)
as SecondHighestSalary;

輸出結果:
這裡寫圖片描述

相關推薦

Mysql 第二薪水

問題描述: 編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 例如上述 Employee 表,SQL查詢應該返回 200 作為第二高的薪水。如果不存在第二高的薪水,那麼查詢應返回 null,如下圖。 問題解析:

[LeetCode] Second Highest Salary 第二薪水

Write a SQL query to get the second highest salary from the Employee table. +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 2

leetcode 第二薪水

直接查詢如果不存在第二高的Salary不會返回值,所以應該用子查詢 select (select distinct Salary from Employee order by Salary des

SQL求第二薪水

編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 Id Salary 1 100 2 200 3 300 例如上述 Employee 表,SQL查詢應該返回 200

mysql第二薪水

編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300

Mysql實現"第二薪水"的兩種方法

寫SQL查詢語句獲得Employee表中第二高的薪水 +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300 | +----+-------

【Leetcode】Mysql查詢第二薪水

編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 +—-+——–+ | Id | Salary | +—-+——–+ | 1 | 100 | | 2

176. 第二薪水

沒有 The 臨時 pro use 如果 ng-if ifnull highest Write a SQL query to get the second highest salary from the Employee table. +----+--------+ |

LeetCode-第二薪水(second-highest-salary)

第二高的薪水 難度 簡單 更多LeetCode答案歡迎大家關注Github: https://github.com/lxyer/LeetCodeAnswer 編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 +----+---

Leetcode 176. 第二薪水

編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300

LeetCode--176--第二薪水

問題描述: 編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300 | +----+----

leetcode176:第二薪水

編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300

Leetcode刷SQL 1、第二薪水

編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3 | 300 | +----+--------+

【Leetcode】176. 第二薪水

題目 編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 +----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3

第二薪水--sql查詢

LEETCODE題目:編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。+----+--------+ | Id | Salary | +----+--------+ | 1 | 100 | | 2 | 200 | | 3

LeetCode #176第二薪水

查詢第二高的資料,思路就是先找到最大值,然後在剩下的資料裡找到比最大值要小的最大值。一開始我的做法是用ifnull函式,但預設值的資料型別會改變薪水的資料型別,ifnull(Salary,null)時遇

力扣——第二薪水(數據庫的題

des ont span sql 查詢 select 編寫 query 數據庫 bold 編寫一個 SQL 查詢,獲取 Employee 表中第二高的薪水(Salary) 。 +----+--------+ | Id | Salary | +----+--------+ |

176.第二薪水

解析 select max(Salary) as SecondHighestSalary from Employee where Salary <(select max(Salary) from Employee ) 最大查詢 select max(col

【LeetCode】176.第二薪水

176.第二高的薪水編寫一個 SQL 查詢語句,獲取Employee表中第二高的薪水(Salary)。用到的表和資料SQL:Create table If Not Exists Employee (Id

LeetCode.176. 第二薪水

思路1: 即降序排序後取第二個。這裡難搞的是空值情況。最後使用isnull函式,如果選擇為空,則返回為空。 程式碼1: SELECT ifnull( ( SELECT DISTINCT Salary FROM Employee ORDER BY Sala