LeetCode //MySQL - 176. Second Highest Salary

LeetCode //MySQL - 176. Second Highest Salary

码农世界 2024-06-17 后端 79 次浏览 0个评论

176. Second Highest Salary

Table: Employee

±------------±-----+

| Column Name | Type |

±------------±-----+

| id | int |

| salary | int |

±------------±-----+

id is the primary key (column with unique values) for this table.

Each row of this table contains information about the salary of an employee.

Write a solution to find the second highest salary from the Employee table. If there is no second highest salary, return null (return None in Pandas).

The result format is in the following example.

 

Example 1:

Input:

Employee table:

±—±-------+

| id | salary |

±—±-------+

| 1 | 100 |

| 2 | 200 |

| 3 | 300 |

±—±-------+

Output:

±--------------------+

| SecondHighestSalary |

±--------------------+

| 200 |

±--------------------+

Example 2:

Input:

Employee table:

±—±-------+

| id | salary |

±—±-------+

| 1 | 100 |

±—±-------+

Output:

±--------------------+

| SecondHighestSalary |

±--------------------+

| null |

±--------------------+

From: LeetCode

Link: 176. Second Highest Salary


Solution:

Ideas:

To achieve this, we can use the DISTINCT keyword to get unique salaries and then use the LIMIT clause along with OFFSET to get the second highest salary. If there is no second highest salary, we should return NULL.

Code:
SELECT 
    (SELECT DISTINCT salary 
     FROM Employee 
     ORDER BY salary DESC 
     LIMIT 1 OFFSET 1) AS SecondHighestSalary;

转载请注明来自码农世界,本文标题:《LeetCode //MySQL - 176. Second Highest Salary》

百度分享代码,如果开启HTTPS请参考李洋个人博客
每一天,每一秒,你所做的决定都会改变你的人生!

发表评论

快捷回复:

评论列表 (暂无评论,79人围观)参与讨论

还没有评论,来说两句吧...

Top