【问题标题】:filter by year or month from mysql datetime cakephp从mysql datetime cakephp按年或月过滤
【发布时间】:2013-10-10 03:14:31
【问题描述】:

我在 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 月)。那么,如何在表格的日期字段中添加条件以按正确的月份进行过滤?

提前感谢您的帮助

【问题讨论】:

    标签: php cakephp cakephp-1.3 php-5.3


    【解决方案1】:
    WHERE MONTH(date)=6    // June
    

    你也可以使用YEAR函数

    WHERE YEAR(date) =2013
    

    Referene

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-12-29
      • 1970-01-01
      • 2013-03-08
      • 2014-02-12
      • 2017-12-13
      • 2016-04-10
      • 1970-01-01
      相关资源
      最近更新 更多