1

我在具有字段的 CakePHP 应用程序的数据库中有一个表date。该字段的数据类型是 DATETIME。所以它在表格中显示如下:

2013-08-10 13:34:45

我想在 find() 查询中添加一个条件以按年或月过滤。要按年份过滤,我可以使用 LIKE 条件执行以下操作:

$condition = array(
    'MyModel.date LIKE' => '%2013%'
);

但是我怎样才能按月过滤呢?上面的方法不起作用,因为我可以有这样的日期:

2013-12-11 11:11:11

如果我 LIKE '%11%',我的结果将是错误的,因为上一个日期的月份实际上是 11 月(如果你住在加拿大,则为 12 月)。那么,如何在表格的日期字段中添加条件以按正确的月份进行过滤?

提前感谢您的帮助

4

1 回答 1

5
WHERE MONTH(date)=6    // June

您还可以使用该YEAR功能

WHERE YEAR(date) =2013

参考

于 2013-10-10T03:17:45.040 回答