[英]mySQL Using Average with Group By Function
我需要按类型查找电影的平均价格。 这些表是我尝试过的电影(movie_genre)和价格(price_rentfee):
select movie_genre, avg(price_rentfee)
from movie, price
group by movie_genre;
它按流派列出了电影的平均租金,但所有影片的平均租金均相同。 有没有一种方法可以按类型对它进行平均?
您的查询说
FROM movie, price
那可能是个错误。 它生成电影和价格的所有可能组合。 您可能需要这样的东西才能获得有用的结果。
FROM movie
JOIN price ON movie.movie_id = price.movie_id
您的查询需要键列才能连接两个表。
select movie_genre, avg(price_rentfee) as avgPrice
from movie, price
where movie.movie_id = price.movie_id
group by movie_genre;
要么
select movie_genre, avg(price_rentfee) as avgPrice
from movie
Left Join price
on price.movie_id = movie.movie_id
group by movie_genre;
事实证明,我缺少联接,分组依据和having子句。 我要找的答案是
select movie_genre, avg(price_rentfee)
from price
right join movie
on price.price_code = movie.price_code group by movie_genre;
抱歉,您的问题含糊不清,感谢您的帮助。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.