【发布时间】:2023-01-09 19:52:03
【问题描述】:
我有一个带有“Date_of_joining”列的 mysql 表 employees。我正在尝试获取加入日期最接近当前日期的员工列表
雇员 :
EmpID Date_of_joining
1 2015-08-30
2 2019-01-15
3 2018-01-11
预期结果(假设当前为今天,即 2023-01-09)
EmpID Date_of_joining
3 2018-01-11
2 2019-01-15
1 2015-08-30
我基本上是想找出谁正在接近他们的工作周年纪念日。任何线索或帮助表示赞赏
【问题讨论】:
-
到目前为止你试过什么查询?当前的日期格式似乎可以通过内置的 MySQL 查询功能“排序”。否则,只需在 PHP 中获取它们并在查询后对它们进行排序。我会用
strtotime分解日期并通过简单的数组排序函数进行排序,但这是众多排序函数之一。 -
我试过这个:SELECT * FROM employees ORDER BY ABS(DATEDIFF(NOW(),
Date_of_joining)) -
如果您要列出日期最接近今天的员工,员工的顺序应该是“2-3-1”,对吗...?
-
这从月日部分对日期进行排序:
SELECT * FROM employees ORDER BY SUBSTRING(Date_of_joining, 6) ASC;