【发布时间】:2016-06-02 22:50:56
【问题描述】:
我正在尝试生成一个 MySQL 查询,该查询将显示特定日期范围之间的记录。
为了迎合以英国为主的用户群,我必须以日-月-年的方式格式化日期。
因此,我将日期存储如下:
$timestamp = date("d-m-Y H:i:s");
现在我正在尝试运行 MySQL 查询以返回设定日期范围内的结果。 对于这个特定的查询来说,一天中的时间并不是什么大问题。
我想出了以下似乎没有产生任何结果的方法。
SELECT * FROM table WHERE DATE_FORMAT(`timestamp`, '%d-%m-%Y %H:%i:%s') BETWEEN '01-01-2015 00:00:00' AND '31-12-2015 23:59:00'
我已确保 date_format 的内容与 php date() 变量的相同值匹配,但它仍然不显示任何内容!
可能值得注意的是,时间戳列设置为varchar(255) 类型。
有什么想法可以实现吗?
【问题讨论】:
-
timestamp列的数据是什么格式的?是
NOW()或unixtime之类的吗?你能举个例子吗?