我有一个SQL数据库表,每行包含一个5 columns
的项目:
id
- 项目的唯一ID
user_id
- 项目所有者的ID
name
- 确切的用户输入
simp_name
- 简化用户输入(删除空格和大写以便更好地匹配)
simp_id
- 对于具有相同simp_name
我需要找到十大最受欢迎的商品。这意味着我必须找到表中出现次数最多的simp_id
项。我正在查看COUNT()
函数,但这是最有效的方法吗?
答案 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();