查找数据库表中发生的大多数项目

时间:2018-01-22 13:46:05

标签: sql database laravel

我有一个SQL数据库表,每行包含一个5 columns的项目:

id - 项目的唯一ID

user_id - 项目所有者的ID

name - 确切的用户输入

simp_name - 简化用户输入(删除空格和大写以便更好地匹配)

simp_id - 对于具有相同simp_name

的每个项目,此ID都相同

我需要找到十大最受欢迎的商品。这意味着我必须找到表中出现次数最多的simp_id项。我正在查看COUNT()函数,但这是最有效的方法吗?

1 个答案:

答案 0 :(得分:1)

假设它应该是这样的:

$items = DB::table('your_table')
                ->select('simp_id', DB::raw('count(id) as count_id'))
                ->groupBy('simp_id')
                ->orderBy('count_id','desc')
                ->take(10)
                ->get();