我正在使用CakePHP Find查询从两个diff db表中的两个diff字段获取SUM()
:
$total = $this->Model->find('all',array('fields' =>
array(
'SUM(Model1.amount * Model2.purchase * Model3.rental * Model4.manu) as total'),
'group' => array( 'Model.trackby_id' ) )
);
我发现sum()
方法对于相同的表两个diff字段很有用,但是当diff表中有两个diff字段时它似乎不起作用。
有人有解决方案吗?
答案 0 :(得分:3)
您需要在查找方法的参数中的字段数组中指定SQL片段。
$total = $this->Model->find('all', array(
'fields' => array(
'SUM(Model.price + OtherModel.price) AS total'
),
'group' => 'Model.id'
));