牛客网 SQL实战 1 查找最晚入职员工的所有信息#
目录#
1. 题目描述#
1.1. Time Limit#
C/C++ 1秒,其他语言2秒
1.2. Memory Limit#
C/C++ 32M,其他语言64M
1.3. Problem Description#
查找最晚入职员工的所有信息,为了减轻入门难度,目前所有的数据里员工入职的日期都不是同一天(sqlite里面的注释为--,mysql为comment)
CREATE TABLE `employees` (
`emp_no` int(11) NOT NULL, -- '员工编号'
`birth_date` date NOT NULL,
`first_name` varchar(14) NOT NULL,
`last_name` varchar(16) NOT NULL,
`gender` char(1) NOT NULL,
`hire_date` date NOT NULL,
PRIMARY KEY (`emp_no`));
1.4. Output#
emp_no | birth_date | first_name | last_name | gender | hire_date |
---|---|---|---|---|---|
10008 | 1958-02-19 | Saniya | Kalloufi | M | 1994-09-15 |
1.5. Source#
2. 题解#
可以使用子查询,也可以先排序再取第一个。
3. 代码#
使用子查询,能够取出入职日期最晚的多个员工。
SELECT *
FROM employees
WHERE hire_date =
(SELECT MAX(hire_date) FROM employees)
使用排序和LIMIT,可以取出唯一一个。
SELECT *
FROM `employees`
ORDER BY hire_date DESC
LIMIT 1;
联系邮箱:curren_wong@163.com
CSDN:https://me.csdn.net/qq_41729780
知乎:https://zhuanlan.zhihu.com/c_1225417532351741952
公众号:复杂网络与机器学习
欢迎关注/转载,有问题欢迎通过邮箱交流。