码迷,mamicode.com
首页 > 数据库 > 详细

mysql 第二高薪水

时间:2019-03-19 15:15:45      阅读:240      评论:0      收藏:0      [点我收藏+]

标签:limit   限制   title   cts   返回   rom   sql查询   nbsp   span   

 编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) 

+----+--------+
| Id | Salary |
+----+--------+
| 1  | 100    |
| 2  | 200    |
| 3  | 300    |
+----+--------+

例如上述 Employee 表,SQL查询应该返回 200 作为第二高的薪水。如果不存在第二高的薪水,那么查询应返回 null

+---------------------+
| SecondHighestSalary |
+---------------------+
| 200                 |
+---------------------+

刚一看题目,觉得很简单的,可是做了一下之后才发现很多细节都没考虑,特此记录下来

select (select distinct Salary  from Employee order by Salary desc limit 1,1)as SecondHighestSalary

select (select distinct Salary  from Employee order by Salary desc limit 1 offset 1)as SecondHighestSalary

limit限制结果范围

SELECT * FROM Employee LIMIT 0,1; 
SELECT * FROM Employee LIMIT 1 OFFSET 0;
SELECT * FROM products LIMIT 1;

“0”: 代表数据获取的起始位置.(0代表第一条记录,以此递增) 
“1”: 期望获取的记录条数. 

当获取的记录是从第一条开始则可以省略书写起始位置 “0”

 

mysql 第二高薪水

标签:limit   限制   title   cts   返回   rom   sql查询   nbsp   span   

原文地址:https://www.cnblogs.com/baby123/p/10558513.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!