数据库SQL实战
2017-08-04 17:10
155 查看
题目描述
获取当前(to_date='9999-01-01')薪水第二多的员工的emp_no以及其对应的薪水salaryCREATE TABLE `salaries` (
`emp_no` int(11) NOT NULL,
`salary` int(11) NOT NULL,
`from_date` date NOT NULL,
`to_date` date NOT NULL,
PRIMARY KEY (`emp_no`,`from_date`));
输入描述:
无
输出描述:
emp_no | salary |
---|---|
10009 | 94409 |
select emp_no, salary
from salaries
where to_date = '9999-01-01'
order by salary desc limit 1,1 #limit 1,1 表示从最后一个记录往前取一个记录
方法2:如果最高工资不止一个,则用limit 1,1 取到的就还是最高的工资,而不是第二高的工资
select emp_no, max(salary)
from salaries
where to_date = '9999-01-01'
and salary < (select max(salary) from salaries)
相关文章推荐
- 【数据库SQL实战】找出所有员工当前具体的薪水情况
- Gradle实战:执行sql操作hive数据库
- 数据库SQL实战
- 【数据库SQL实战】查找入职员工时间排名倒数第三的员工所有信息
- sql 2005数据库加密实战
- 数据库SQL实战-答案解析(15-20)
- ProxySQL+Mysql实现数据库读写分离实战
- <实战>oracle 数据库的sql语句中 ‘&’ 符号的处理
- 【数据库SQL实战】查找所有员工的last_name和first_name(以及对应部门编号dept_no)
- 数据库SQL实战(一)
- 数据库技能实战进阶之常用结构化sql语句(上)
- SQL实战日记--数据库文件还原问题排查
- 数据库SQL实战
- [数据库SQL实战] 习题及答案
- Gradle实战:执行sql操作hive数据库
- 牛客:数据库SQL实战(一)查询入职最晚的员工的所有信息
- 数据库SQL实战
- 实战 SQL Server 2008 数据库误删除数据的恢复 (转载至dudu http://www.cnblogs.com/dudu/archive/2011/10/15/sql_server_recover_deleted_records.html)
- mybatis实战之路,疯狂的数据库操作框架、动态sql的mybats之快速搭建基本环境
- 数据库SQL实战练习(上)