【发布时间】:2012-03-28 01:55:23
【问题描述】:
我想在我的 PHP 中执行这样一个简单的查询,
SELECT noslots FROM calender WHERE coursedate = '01-01-2012';
但是我的日期以标准 YYYY-MM-DD 格式存储在数据库中,所以显然我没有得到任何结果。
我已尝试通读手册,但对于初学者来说很难提取正确的信息
感谢您提供的任何帮助!
[=
【问题讨论】:
我想在我的 PHP 中执行这样一个简单的查询,
SELECT noslots FROM calender WHERE coursedate = '01-01-2012';
但是我的日期以标准 YYYY-MM-DD 格式存储在数据库中,所以显然我没有得到任何结果。
我已尝试通读手册,但对于初学者来说很难提取正确的信息
感谢您提供的任何帮助!
[=
【问题讨论】:
你可以使用 -
SELECT noslots
FROM calender
WHERE coursedate = STR_TO_DATE('01-01-2012', '%d-%m-%Y');
您可能需要根据日期格式切换 %d 和 %m。
【讨论】:
MySQL 唯一支持的日期/时间格式是yyyy-mm-dd hh:mm:ss。您不能传递任何其他字符串并将其正确解析为日期。将日期正确格式化为 mysql 格式取决于您,这意味着您必须在查询中传递 2012-01-01。
【讨论】:
我会使用 PHP 的 date() 和 strtotime() 函数:
mysql_query("SELECT `noslots` FROM `calender` WHERE `coursedate` = '" . date('Y-m-d H:i:s', strtotime('01-01-2012')) . "'");
【讨论】: