假设我在cakephp应用程序中有一个名为users
的数据库表,其中包含一堆用户,在该表中我有一个名为date
的字段,其中包含每个用户的注册日期。假设我想做一个查找查询以获取上个月注册的所有用户。类似的东西:
$last_month_users = $this->User->find('all', array(
'conditions' => array(
'User.date' => 'last month'
)
));
这样的东西不起作用。请问我该怎么做呢?
谢谢
答案 0 :(得分: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)'
)
));