SQL - 选择最高平均值

时间:2013-06-13 13:28:49

标签: mysql

如何检索每个不同实体的平均值(本例中为venue_id)以及数据库中的前n个平均值(AVG)

我有下表

stars   | venue_id
--------|---------
3       |5
2       |5
1       |2
2       |7
2       |7
4       |1

如何检索以下结果:

我希望每个不同的venue_id的平均星星为“avg_rating”。

平均评分

venue_id    | avg_rating
------------|------------
5           |2.5
2           |1
7           |2
1           |4

另外,我正在运行问题以选择以下结果。我想要平均星级的前N或平均评分。

前2评级

venue_id    | avg_rating
------------|-------
1           |4
5           |2.5

1 个答案:

答案 0 :(得分:2)

select 
    venue_id
    , avg(stars) as avg_rating
from myTable 
group by venue_id
order by avg(stars) desc
-----------------------
-- and to get the top 2
-----------------------
limit 2