Я новичок в cakephp2, и я хотел бы попросить вас об одолжении. В настоящее время я изучаю cakephp2, но мне трудно понять, как использовать выражение where и groupby в cakephp2.
Я пытаюсь преобразовать этот SQL-запрос ниже в Cakphp2, но как я буду делать это с помощью find ()?
select params,count(params) from pv_logs
where dt = '2014/9/25' and is_crawler = 0
group by params order by count(params) desc limit 100 ;
Вот как я это сделал в формате cakephp2, но вы видите что-то не так с этим?
$pvcount = $this->PvLog->find('all', array(
'fields' => array('dt','params','count(params)'),
'conditions'=>array('PvLog.dt'=>'2014/9/25','PvLog.is_crawler'=>0),
'group'=>array('PvLog.params'),
'order'=>array('PvLog.count(params)'),
'limit' => 100,
));
Попробуй ниже
$this->PvLog->virtualFields['params_count']='count(params)';
$pvcount = $this->PvLog->find('all', array(
'fields' => array('dt','params','params_count'),
'conditions'=>array('PvLog.dt'=>'2014-09-25','PvLog.is_crawler'=>0),
'group'=>array('PvLog.params'),
'order'=>array('params_count'=>'asc'),
'limit' => 100,
));
Других решений пока нет …