具有唯一名称的热门文章

时间:2013-02-10 18:11:36

标签: sql dql

我需要选择带有uniqune名称的评分最高的文章。我有这篇文章表:

id     name   
---------------
1    Article 1 
2    Article 1
3    Article 2

和投票表:

article_id   rating
-------------------- 
   1           3
   1           2
   3           1

当我按名称对文章进行分组时,即使是同名文章也会对评分进行平均计算。

SELECT article.name, AVG(vote.rating) rating
FROM article
LEFT JOIN vote ON vote.article_id = article.id
GROUP BY article.name 

但我希望得到最受好评的文章的平均评分。有谁知道如何做到这一点?谢谢你的任何建议。

编辑: 我想得到这个结果:

    name       average_rating
   --------------------------
   Article 1   2.5
   Article 2   1

2 个答案:

答案 0 :(得分:0)

您是否尝试过使用article_id进行分组?

答案 1 :(得分:0)

您应该按照文章ID进行分组,因为它对每一个都是唯一的

SELECT article.name, AVG(vote.rating) rating
FROM article
LEFT JOIN vote ON vote.article_id = article.id
GROUP BY article.id