2016-09-03 11 views
-3

CakePHP(v3.X)では、テーブル内の値の最も一般的な出現をリストする方法を教えてください。CakePHPは値の最も一般的な出現をリストします

例:Usersテーブルでは、最も一般的な10個の値を表示します。first_name

このSQLのようなものですが、もっとケーキな方法でやり遂げることができると思います。

select first_name, COUNT(first_name) AS MOST_FREQUENT from users GROUP BY first_name ORDER BY COUNT(first_name) DESC

答えて

3

試してみてください。

$most_common = $this->Users->find() 
    ->select(['first_name', 'count' => $query->func()->count('*')]) 
    ->group(['first_name']) 
    ->order(['count' => 'DESC']) 
    ->limit(10); 

読む:仕事だ

http://book.cakephp.org/3.0/en/orm/query-builder.html#selecting-data

+0

うん。なぜそれがあまりにも広いとフラグが立てられたのか分かりません。あなたはそれに最初に答えることができました。 –

+0

最初の10件の結果を尋ねるので、私の答えを編集して '' - > limit(10) '' 'を追加します。なぜあなたの質問が合っているのかわからない。あなたは答えを受け入れることができます。 – Salines

関連する問題