我如何从mysql中获取相同的名称值

时间:2014-03-12 20:42:20

标签: php mysql sql database

我在mysql中有这个表

我尝试选择此数据库中记录最多的用户名并将其显示在网站上。所以基本上我想看看哪个username被记录最多,并显示该用户名和计数。它是一个跟踪投票人数的投票系统。我想在这张桌子上展示前五名选民。所以最重复的前5个用户名。

因此:

[4] davidxd33

将显示在网站上,因为该用户有四票并且已在数据库中登录四次。

我尝试了SELECT username, count(username) FROM Votes只返回了数据库中的第一个名字,然后是用户名的总数。

4 个答案:

答案 0 :(得分:0)

试试这个:

SELECT username, COUNT(*)
FROM Votes
GROUP BY username

GROUP BY强制按username返回一行,COUNT(*)计算每个不同username的行数。

答案 1 :(得分:0)

SELECT username, 
count(*) as total 
FROM Vote
group by username

答案 2 :(得分:0)

返回顶部:

SELECT username, COUNT(*) AS total FROM Votes GROUP BY username ORDER BY total DESC

感谢您的回复!

答案 3 :(得分:0)

您应首先按用户名进行分组,然后根据计数按降序排序并选择前5位。希望这会有所帮助: -

选择前5个用户名,count(*)作为votescount 来自表t 按用户名分组 按votescount desc命令