查询以获取表中最接近的日期

aar*_*man 1 mysql sql

我们必须找到current_date最大的日期.例如,我们有4个不同日期的足球比赛:

id   match_id  date
1     69     2011-05-12
2     89     2011-07-18
3     8      2011-08-12
4     5      2011-12-06
Run Code Online (Sandbox Code Playgroud)

首先,我认为最好的查询必须与该表达式相似:

MIN(DATE_DIFF(CURRENT_DATE(),date))

如果CURRENT_DATE = 2011-11-25,则此查询的结果必须为id = 4.

结论:我们希望从当前日期四舍五入到任何想法获得最多的约会日期?

小智 5

我有你的解决方案:

看这个

SELECT
match_id
ABS (DATEDIFF(CURRENT_DATE(),date))
FROM matches
ORDER BY ABS (DATEDIFF(CURRENT_DATE(),date)) ASC 
LIMIT 0,1
Run Code Online (Sandbox Code Playgroud)

祝好运好友!