我如何使用laravel雄辩地获取mysql表列中最常见的前10个值?

时间:2018-07-13 02:00:40

标签: laravel-5.4 laravel-4.2

我想使用laravel 4.2捕获mysql表列中最常出现的前10个值。

例如,出现次数最多的10种产品及其计数,如下面的原始MySQL查询所示:

SELECT `product_id`, COUNT(*)
FROM `product_details`
GROUP BY `product_id`
ORDER BY COUNT(*) DESC
LIMIT 10;

1 个答案:

答案 0 :(得分:0)

尝试以下语法:

DB::table('product_details')
        ->select('product_id', DB::raw('COUNT(*) AS cnt'))
        ->groupBy('product_id')
        ->orderByRaw('COUNT(*) DESC')
        ->take(10)
        ->get();