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


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM