获取mysql数据库中前5名最受欢迎的项目?

ios*_*eak 3 php mysql

我有一个看起来像这样的数据库:

user_id    photo_id
1          1
1          2
1          3
1          4
2          5
2          6
Run Code Online (Sandbox Code Playgroud)

我想从中获得最受欢迎用户的列表.像这样:

Popular Users: 1 (4) & 2 (2)
Run Code Online (Sandbox Code Playgroud)

我将如何在PHP中使用mysql进行此操作?

谢谢,库尔顿

PS:我对mysql命令了解很多,所以你不必愚蠢.谢谢!

Mar*_*c B 16

基本查询将是:

select user_id, count(user_id) as cnt
from yourtable
group by user_id
order by cnt desc 
Run Code Online (Sandbox Code Playgroud)

要显示结果,请执行以下操作:

$results = array()
while($row = mysql_fetch_assoc($query_result)) {
   $results[] = "{$row['user_id']} ({$row['cnt']})"
   // repeat for however many results you want
}
echo "Popular user: ", implode(" & ", $results);
Run Code Online (Sandbox Code Playgroud)


mpe*_*pen 5

select user_id, count(user_id) as count from table order by count desc group by user_id
Run Code Online (Sandbox Code Playgroud)

无论如何......