所以我有一个包含两个字段的模型:customer_rating和official_rating。我显然可以按其中一种排序。我很好奇:在做一个发现时,是否有一种干净的方法可以按这两个字段的平均值进行排序?
答案 0 :(得分:0)
我建议保留另一个字段'avg_rating'并通过模型上的'afterSave()'填充它。它保持最新,并且您不需要经常进行过多的MySQL计算。
应该让你的生活更轻松,因为你可以像处理其他任何价值一样处理它。
答案 1 :(得分:0)
$this->Model->virtualFields['sum_field'] = 'Model.field_1 + Model.field_2';
$this->Model->find('all', array(
'order' => array(
'Model.sum_field'
)
));