2017-02-06 17 views
0

フィールドがあるテーブルがあります: || id ||名前|| c_number || 私は、クエリを持っている:クエリから最大値を選択 - LARAVEL

$query  ->select('c_number', DB::raw('count(*) as total')) 
      ->groupBy('c_number') 
      ->get(); 

出力:私は、合計で最大であるc_numberの出力値のみ(-s)から選択する必要がある

[{"c_number":1,"total":4},{"c_number":2,"total":2},{"c_number":3,"total":2},{"c_number":4,"total":2}] 

。 クエリでどうすればいいですか、教えてください。

+0

少し説明することができます –

+0

@RanaGhosh ** groupBy(c_number)**が最大で、その行の** c_number **値を取得する必要があります。 –

答えて

1

orderBy()first()の混合物を使用できます。

->select('c_number', DB::raw('count(*) as total')) 
->groupBy('c_number') 
->orderBy('total', 'desc') 
->first(); 

これが役立ちます。

+0

ありがとうございます!できます –

関連する問題