Cakephp 2.6
学校有很多学生,我正在学校模型中运行一个可包含的查询。在这个查询中,我想计算每个学校的学生人数,但我无法让它工作。
我已尝试使用以下虚拟字段,但它不起作用
$this->virtualFields['total'] = 'COUNT(Pupil.id)';
以下是给出不准确的计数
$contain = array(
'Pupil' => array(
'fields' => array(
'CONT(Pupil.id) AS total'
)
),
);
我不想使用counterCache
,因为数据可以大量导入到框架之外的两个表中,因此我不能依赖它来更新计数字段。
如何才能正确运行此计数?
答案 0 :(得分:-1)
尝试按School
s:
$contain = array(
'Pupil' => array(
'fields' => array(
'CONT(Pupil.id) AS total'
),
'group' => array('Pupil.school_id') // doesn't really know how you called `school` relation column...
),
);