0

我有一个名为“服务”的简单表。

每条记录仅由一个 ID 和“服务名称”组成。

这些服务然后由“客户表”中的客户使用,由服务 ID 链接。

我如何使用蛋糕从“客户”表中获取最常用的服务?

4

1 回答 1

1

使用CounterCache 字段

您还可以按该字段分组并获取 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'];
}
于 2013-08-05T09:04:10.580 回答