如果这个问题已经回答了很多次,我深表歉意,但我找不到答案,我很困惑。
我有一个 mysql 查询,当我在数据库中运行它时,它似乎输出了我想要的结果 - 但是当我通过 PHP 运行查询时,它没有正确输出。
在数据库中,日期是这样存储的:
2009-08-13T00:00:00
我想做的是不显示早于今天的数据。所以,在 where 子句中这样做:
WHERE dateField1 >= DATE_FORMAT(now(),'%Y-%m-%d') AND dateField2 >= DATE_FORMAT(now(),'%Y-%m-%d')
我的意图是去掉时间部分,因为我一直在努力寻找一种方法将 now() 的时间部分转换为午夜。
当我在 PHPMyadmin 上运行它时,这似乎有效,但当我运行 php 脚本时,它却没有。
有什么想法吗?
非常感谢!
最佳答案
This seems to work when I run it on PHPMyadmin, but when I run the php script it does not.
您没有使用类似 sprintf
的东西来构建字符串吧?如果是这样,您需要使用另一个 %
%
在任何情况下,您都可以使用函数 DATE()
WHERE `dateField1` > DATE(NOW())
关于php/mysql - date_format 和时间部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1272155/