4

我需要从 MySQL 表中获取最接近当前日期的日期。

这是我的桌子:

id        | date          | name
1         | 2012-10-29    | test
2         | 2009-11-31    | test

因此,如果今天运行查询,它将返回1 | 2012-10-29 | test

任何帮助深表感谢。谢谢

4

3 回答 3

15
SELECT 
  * 
FROM 
  your_table 
ORDER BY 
  ABS(DATEDIFF(NOW(), `date`))
LIMIT 1
于 2012-10-23T08:32:54.243 回答
0
select top 1 date from table
where date > now()
order by date desc
于 2012-10-23T08:32:43.307 回答
0
SELECT * FROM `your_table` WHERE ABS(DATEDIFF(`date`, NOW()));

回报:

'1', '2012-10-29 00:00:00', 'test'
于 2012-10-23T08:33:52.697 回答