【问题标题】:PHP MySQL Date diffPHP MySQL 日期差异
【发布时间】:2011-04-21 16:00:53
【问题描述】:

我在 MySQL 中有字段 datetime 和 DATETIME 类型。在 PHP 脚本中,我像这样设置日期开始和日期结束:11/12/1999 和 11/12/2001。在我的表中,日期时间以下一个格式保存:11.11.1888 00:00:00。如何比较这些日期?

谢谢。

【问题讨论】:

  • 您能否发布一个代码示例,显示您如何“设置日期开始和日期结束”?为什么是 1888 年?
  • 这是一个示例数字。什么代码?我在问代码。
  • 所以您的问题是“如何查找开始日期和结束日期之间的条目”?

标签: php mysql datetime date


【解决方案1】:

这可以更轻松地完成,但这是一种方法:

$begindate = strreplace($begindate,'/','.');
$enddate = strreplace($enddate,'/','.');

mysql_query("SELECT * FROM MyTable
WHERE dateField BETWEEN '$begindate 00:00:00' AND '$enddate 23:59:59'");

【讨论】:

    【解决方案2】:

    应该是这样的

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-12-20
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多