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我刚刚做了一个编辑,解决了这一点!是的,我刚刚看到,在我写了评论之后,这解决了所有问题!先生,非常感谢您的帮助!非常感谢^^