0

假设我有一个users在 cakephp 应用程序中调用的数据库表,其中包含一堆用户,并且在该表中我有一个名为的字段date,其中包含每个用户的注册日期。例如,假设我想进行查找查询以获取上个月注册的所有用户。就像是:

$last_month_users = $this->User->find('all', array(
    'conditions' => array(
        'User.date' => 'last month'
    )
));

像这样的东西是行不通的。知道我会怎么做吗?

谢谢

4

1 回答 1

1

如果您使用的是 mysql,您希望在语句中添加:

WHERE MONTH(User.date) = MONTH(CURRENT_DATE - INTERVAL 1 MONTH)

我相信您可以通过以下操作在 cakePHP 中做到这一点:

$last_month_users = $this->User->find('all', array(
    'conditions' => array(
        'MONTH(User.date) = MONTH(CURRENT_DATE - INTERVAL 1 MONTH)'
    )
));
于 2013-10-24T15:48:29.777 回答