2017-07-20 252 views
0

我想查询一个小表并获取具有特定类型的行数,并显示该类型的项目的平均价格,我的代码是低于,但不是显示正确的结果查询计数,子查询平均值

SELECT Movie_Genre, COUNT(*) as COUNT 
FROM(
SELECT Movie_Genre, 
    AVG(Movie_Cost) 'Average Price' 
FROM `indemoviedb`.`movie`) AS T 
GROUP BY Movie_Genre; 

任何指针,以我要去哪里错了这里,这段代码运行时,我得到一个表2列一行

感谢

回答

1

你不这不需要子查询:

SELECT Movie_Genre, 
     AVG(Movie_Cost) as Average_Price, 
     COUNT(*) as Num_Movies 
FROM `indemoviedb`.`movie` m 
GROUP BY Movie_Genre; 

注:

  • 不要为列别名使用单引号。这只会导致混乱和错误。
  • 使用表别名很好。使用作为表名称缩写的表别名要好得多。
+2

非常棒的工作,感谢您的快速回复! –