如何通过使用mysql查询评级来获取用户? (评分最高)

时间:2010-01-27 14:43:14

标签: sql mysql

我刚刚提出了一个查询

    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系统。

2 个答案:

答案 0 :(得分:1)

这只是一种预感,但ratings.rateable对我来说有点像。有一个结果有用户的任何机会.id 1?

ratings.rateable真的是users.id的外键吗?

答案 1 :(得分:0)

很难分辨,因为我无法看到你所有的东西....但我的猜测是你的SQL的'ON ratings.rateable = users.id'部分。您是否将users.id字段值存储在评级表的可评级列中?