繁体   English   中英

MySQL使用按功能分组平均

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM