我有一个名为'服务'的简单表。
每条记录只包含一个ID和'service_name'。
然后客户在“客户表”中使用这些服务,这些服务由服务ID链接。
如何使用cake从'Customers'表中获取最常用的服务?
答案 0 :(得分:1)
您还可以按该字段进行分组,然后获取COUNT(),然后查找服务。
$services = $this->Service->find('all');
$services = Hash::combine($services, '{n}.Service.id', '{n}.Service');
$service_counts = $this->Customer->find('all', array(
'fields' => array('Customer.service_id', 'COUNT(*) AS count'),
'group' => 'Customer.service_id',
));
foreach($service_counts as $service) {
$services[$service['Customer']['service_id']]['Service']['count'] = $service[0]['count'];
}