Leetcode 176. Second Highest Salary

原创 2016年08月30日 02:08:27

176. Second Highest Salary

Total Accepted: 22494 Total Submissions: 100791 Difficulty: Easy

Write a SQL query to get the second highest salary from the Employee table.

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

For example, given the above Employee table, the second highest salary is 200. If there is no second highest salary, then the query should return null.

思路:

这个题弄了半天没有出来,本来想着先排序然后取第二个,结果要求是null if没有第二个数。注意:一行是输出null;全部都是重复的一个value一样是输出null。

方法就是先取出salary这列,然后降序排序,然后用limit函数取出第二行,最后改该列名称为SecondHighestSalary。

# Write your MySQL query statement below
select (select distinct Salary from Employee order by Salary desc limit 1,1) as SecondHighestSalary;

在我们使用查询语句的时候,经常要返回前几条或者中间某几行数据,这个时候怎么办呢?不用担心,mysql已经为我们提供了这样一个功能。
SELECT * FROM table  LIMIT [offset,] rows | rows OFFSET offset

LIMIT 子句可以被用于强制 SELECT 语句返回指定的记录数。LIMIT 接受一个或两个数字参数。参数必须是一个整数常量。如果给定两个参数,第一个参数指定第一个返回记录行的偏移量,第二个参数指定返回记录行的最大数目。初始记录行的偏移量是 0(而不是 1): 为了与 PostgreSQL 兼容,MySQL 也支持句法: LIMIT # OFFSET #。 

mysql> SELECT * FROM table LIMIT 5,10;  // 检索记录行 6-15

//为了检索从某一个偏移量到记录集的结束所有的记录行,可以指定第二个参数为 -1: 
mysql> SELECT * FROM table LIMIT 95,-1; // 检索记录行 96-last.

//如果只给定一个参数,它表示返回最大的记录行数目: 
mysql> SELECT * FROM table LIMIT 5;     //检索前 5 个记录行

//换句话说,LIMIT n 等价于 LIMIT 0,n。

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关文章推荐

LeetCode Second Highest Salary

Write a SQL query to get the second highest salary from the Employee table. +----+--------+ | Id | S...

MySQL-Second Highest Salary

Write a SQL query to get the second highest salary from the Employee table. +----+--------+ | Id | S...

Second Highest Salary

Write a SQL query to get the second highest salary from the Employee table. +-

LeetCode | Second Highest Salary & Nth highest salary

Write a SQL query to get the second highest salary from the Employee table. +----+--------+ | Id | S...

Leetcode 177. Nth Highest Salary

177. Nth Highest Salary Total Accepted: 10762 Total Submissions: 66455 Difficulty: Medium Write ...

Nth Highest Salary 解法讨论(Mysql)

题目分析 Write a SQL query to get the nth highest salary mysql join order by limit offset

184. Department Highest Salary

The Employee table holds all employees. Every employee has an Id, a salary, and there is also a colu...

题目8:MySQL---------Department Highest Salary

The Employee table holds all employees. Every employee has an Id, a salary, and there is also a col...

16周任务二 salary 文件的操作

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称: sal...

第四周上机--任务四--设计一个工资类(Salary)--完成各个功能--文件中读入数据--学会ASCII文件的操作

/* (程序头部注释开始) * 程序的版权和版本声明部分 * Copyright (c) 2011, 烟台大学计算机学院学生 * All rights reserved. * 文件名称:设计一...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:Leetcode 176. Second Highest Salary
举报原因:
原因补充:

(最多只允许输入30个字)