まずこれを見てください。
$params = array( 'group' => 'hoge.value', 'fields' => array('id, 'COUNT(*) AS num', value'), ); var_dump( $this->Hoge->find('all', $params) );
結果はこうなります。
array 'Hoge' => array 'id' => 1 'value' => string 'hogehogehoge' (length=12) 0 => array 'num' => string '1' (length=1)
countした数が配列の外に来てしまって、あまりスマートではありません。
きれいに配置するには以下のようにvirtualFieldsを使います。
$this->Hoge->>virtualFields['num'] = 0; $params = array( 'group' => 'hoge.value', 'fields' => array('id, 'COUNT(*) AS Hoge__num', value'), ); var_dump( $this->Hoge->find('all', $params) );