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类型的字段 datetime code>。 在PHP脚本中,我将日期开始和日期结束设置为:11/12/1999和11/12/2001。 在我的表日期时间保存在下一格式:11.11.1888 00:00:00。 如何比较这些日期? p>

谢谢。 p> div>

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');