我有点困在这里做最后一次高中评估了。
任务本质上是建立一个处理电影信息的数据库。
表:电影表,电影评论表
我的任务是在上显示和它们的评论,然后计算和显示一个平均的总体评分。
从视觉上看,应该是这样的:
示例:
“电影标题”,电影评论评等“,”平均评分“”
我该如何计算每部电影的平均水平?
SELECT
`Movie name`,
`Overall Rating`
AVG(`Average Rating`)
FROM
Movie
INNER JOIN `Movie review`
ON Movie.`Movie Ref` = `Movie review`.`Movie Ref`;
发布于 2018-07-20 09:51:54
一个选项使用域聚合函数:
选择MovieRatings.MovieTitle,MovieRatings.MovieReviewRating,Round(DAvg("MovieReviewRating","MovieRatings",“MovieTitle=‘& MovieTitle &’”),1)作为AverageRating;
或构建聚合查询(打开Access查询生成器并单击带状上的总计按钮):
选择MovieRatings.MovieTitle,Avg(MovieRatings.MovieReviewRating)作为AvgOfMovieReviewRating,从MovieRatings组中选择MovieRatings.MovieTitle;
然后将该查询加入到表中:
选择MovieRatings.MovieTitle,MovieRatings.MovieReviewRating,Round(AvgOfMovieReviewRating,1)作为AverageRating从Query1 INNER MovieRatings ON Query1.MovieRatings= MovieRatings.MovieTitle;
以下是两个嵌套为一体的查询:
选择MovieRatings.MovieTitle,MovieRatings.MovieReviewRating,Round( AvgOfMovieReviewRating ,1)作为AverageRating (选择MovieRatings.MovieTitle,Avg(MovieRatings.MovieReviewRating)作为AvgOfMovieReviewRating,从MovieRatings组中选择MovieRatings.MovieTitle)作为Query1内连接MovieRatings;
第一次构建和保存聚合查询所创建的嵌套查询。然后构建引用Query1的第二个查询,切换到SQLView,并将Query1的SQL语句复制/粘贴到第二个查询和保存中。现在可以删除Query1对象。
在MovieTitle字段上进行分组和连接,但实际上应该使用数字主键和外键。
要注意,aware ()函数使用偶数/奇数规则: 9.45圈到9.4圈,9.35圈到9.4圈。
建议不要在命名约定中使用空格。
发布于 2018-07-20 10:37:56
您可能误解了这个问题或猜测了数据结构。你不会事先知道平均数的。如果你的教授给你的数据有预先汇总的平均值,那么他们没有正确地教你,因为这不是数据被放入数据库的方式。也就是说,如果您将第一个值放入其中,并且有50,000个值要插入,您如何知道要将什么放入平均列中?您必须等到所有50,000个值都被插入-然后取平均值。然后用这个平均值更新50,000行数据。
电影评论表最有可能是两列--“电影标题”和“电影评论评等”。其中,表中的每一行都表示一个检查。在将行插入带有电影评论数据的表后,获取平均值将在稍后出现。
插入数据后,平均值将类似于:
SELECT MovieTitle, AVG(MovieReviewRating) AS AverageRating
FROM MovieReview
GROUP BY MovieTitle
确认平均值后,您可以加入“电影表”的列。
https://stackoverflow.com/questions/51447059
复制相似问题