我刚刚提出了一个查询
SELECT *
FROM users
INNER JOIN ratings ON ratings.rateable=users.id
ORDER BY SUM(ratings.rating)/COUNT(ratings.rating)
但是,它不起作用,我只是得到一个人的结果,虽然在评级表中有3个人!我正在使用php 5.
我认为sum(),count()根本不起作用! 请帮忙!!因为我无法理解如何构建TOP RATED系统。
答案 0 :(得分:1)
这只是一种预感,但ratings.rateable
对我来说有点像。有一个结果有用户的任何机会.id 1?
ratings.rateable
真的是users.id
的外键吗?
答案 1 :(得分:0)
很难分辨,因为我无法看到你所有的东西....但我的猜测是你的SQL的'ON ratings.rateable = users.id'部分。您是否将users.id字段值存储在评级表的可评级列中?