0


sql查找最晚一天/日期最大的一条记录 两种方法

例:查找最晚入职员工的所有信息

建表:

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`));

方法一:

排序,降序。

对hire_date字段排序降序,此时最晚的时间排在第一个,再用LIMIT取出。

SELECT * FROM employees ORDER BY hire_date DESC LIMIT 0,1;

LIMIT m,n : 表示从第m+1条开始,取n条数据;

LIMIT n : 表示从第0条开始,取n条数据,是limit(0,n)的缩写。

本题limit 0,1 表示从第(0+1)条数据开始,取一条数据,即取出最晚入职员工。

方法二:

子查询

先找出 hire_date 字段的最大值,再把该值当成 employees 表的 hire_date 查询条件。

SELECT * FROM employees WHERE hire_date = (SELECT MAX(hire_date) FROM employees);

参考文章:

sql查找最晚一天,日期最大的一条记录 两种方法 - 乌骓 - 博客园 (cnblogs.com)

标签: sql 数据库 mysql

本文转载自: https://blog.csdn.net/qq_59125846/article/details/132602491
版权归原作者 断浪young 所有, 如有侵权,请联系我们删除。

“sql查找最晚一天/日期最大的一条记录 两种方法”的评论:

还没有评论