如何使用 PHP 显示来自特定日期的 mySQL 的行?

How to show rows from mySQL from a particular date using PHP?

在 mySQL 中,我有一个名为 when

的时间戳列
2015-01-07 16:43:21

我的问题是如何使用 PHP/mySQL

现在我可以根据月数显示结果,例如

... where month(`when`) = '1' ...

但是如果我想显示特定日期的行,例如 2015-01-05 怎么办?

我将通过变量将首选日期传递到 sql 查询中。

以下是通过MySQL转换日期的方法:

SELECT 
  DATE_FORMAT(`when`, '%Y-%m-%d') AS my_date
FROM
  my_table
WHERE 
  MONTH(`when`) = 1;

在此处查看 MySQL 其他格式的文档:http://dev.mysql.com/doc/refman/5.1/en/date-and-time-functions.html#function_date-format

只需将 date() 函数包裹在已经采用 YYYY-MM-DD 格式的日期字符串周围,并在 where 子句中包裹您的时间戳字段:

select * from table where date(`when`) = date('2015-01-05');

来自 date() 的文档:

Extracts the date part of the date or datetime expression expr.