PHP MySQL日期差异
问题描述:
I have the field datetime
with DATETIME type in MySQL. In PHP script I set date begin and date end like this: 11/12/1999 and 11/12/2001. In my table datetime saved in the next format: 11.11.1888 00:00:00. How can I compare these dates?
Thanks.
我在MySQL中使用DATETIME类型的字段 谢谢。 p>
div> datetime code>。 在PHP脚本中,我将日期开始和日期结束设置为:11/12/1999和11/12/2001。 在我的表日期时间保存在下一格式:11.11.1888 00:00:00。 如何比较这些日期? p>
答
It could be done more easly, but this is one way:
$begindate = strreplace($begindate,'/','.');
$enddate = strreplace($enddate,'/','.');
mysql_query("SELECT * FROM MyTable
WHERE dateField BETWEEN '$begindate 00:00:00' AND '$enddate 23:59:59'");
答
should be something like
SELECT *, STR_TO_DATE(datetime,'%d.%m.%Y') as newdatetime
FROM table
WHERE newdatetime >= STR_TO_DATE('11/12/1999','%d/%m/%Y')
AND newdatetime <= STR_TO_DATE('11/12/2001','%d/%m/%Y');