Php 选择与数据库差异最小的日期(从今天开始)

Php 选择与数据库差异最小的日期(从今天开始),php,mysql,sql,date,select,Php,Mysql,Sql,Date,Select,有人能告诉我如何从现在开始选择最近的日期(差异最小)? 目前我正在使用类似的东西 SELECT MAX(DatumAangemaakt) AS RecenteSchema FROM Personeelsschema 我使用Max()函数,但这不好,因为如果我在将来有一个日期(例如2015-06-23),这个日期将被选中。 我需要的是选择今天的日期(如果有)或从今天开始的最近日期,例如: 2015-06-23 2015-06-01 2015-05-17(将选择此项) 有什么方法可以做到这一点

有人能告诉我如何从现在开始选择最近的日期(差异最小)?
目前我正在使用类似的东西

SELECT MAX(DatumAangemaakt) AS RecenteSchema FROM Personeelsschema
我使用Max()函数,但这不好,因为如果我在将来有一个日期(例如2015-06-23),这个日期将被选中。

我需要的是选择今天的日期(如果有)或从今天开始的最近日期,例如:
2015-06-23
2015-06-01
2015-05-17(将选择此项)


有什么方法可以做到这一点吗?

获取超过当前日期的所有日期,对它们进行排序,并获取最新记录:

SELECT DatumAangemaakt AS RecenteSchema
FROM Personeelsschema
WHERE DATE(DatumAangemaakt) >= DATE(NOW()) 
ORDER BY  DatumAangemaakt  LIMIT 1

如果还希望在邻近性检查中包含过去的日期,则可以使用以下查询:

SELECT DatumAangemaakt
FROM Personeelsschema
ORDER BY ABS(TIMESTAMPDIFF(DAY, DatumAangemaakt, DATE(NOW()))) LIMIT 1

非常感谢,我现在就试试这个,让你知道它是从未来而不是过去得到的日期,对吗?如果我想从过去得到日期,我应该这样做吗<代码>或日期(datumanegmaakt)@ElomarAdam我刚刚做了一个编辑,解决了这一点!是的,我刚刚看到,在我写了评论之后,这解决了所有问题!先生,非常感谢您的帮助!非常感谢^^