我有一个功能,在我的网站上,人们可以投票的照片。每次有人单击“投票”按钮时,我的脚本都会在表(mysql)中添加一行。
每一行如下所示:(表名=喜欢)
身份证
1
我如何找到前十名的照片,人们一直在投票?我试过“从喜欢中选择前10名photoName”,但这不起作用.
发布于 2010-01-23 11:12:55
SELECT
COUNT(*) as points,
photoName
FROM likes
GROUP BY photoName
ORDER BY points DESC
LIMIT 10;发布于 2010-01-23 11:13:07
您必须将一些count与group by一起使用;类似这样的内容应该会有所帮助:
select photoName, count(*) as nbLikes
from likes
group by photoName
order by count(*) desc
limit 0, 10也就是说,您group by photoName,然后计算每一张照片被喜欢的次数--并按desc顺序计算这个数字,以得到最喜欢的图片;最后,您使用limit只获取前10行。
https://stackoverflow.com/questions/2122927
复制相似问题