我准备了一个满足我要求的sql语句,但是我需要转换该sql
语句进入cakePHP模型查找条件我不知道该如何准备,请帮忙
我
SQL查询:
select id,text,is_file,order from kmp_contents
where parent_id=1873
order by case
when is_file=1 then text
when is_file=0 then order
end asc;
最佳答案
你可以试试:
$this->KmpContent->find(
'conditions' => array('KmpContent.parent_id' => 1873),
'fields' => array('KmpContent.id', 'KmpContent.text', 'KmpContent.is_file', 'KmpContent.order'),
'order' => array('KmpContent.case ASC', 'WHEN is_file=1 THEN KmpContent.text WHEN is_file=0 THEN KmpContent.order ASC')
);
order
键将提供的数组中提供的条件包装在ORDER BY
语句周围。如果这不起作用,则始终可以将
Model::query()
用于复杂的查询。