Sql 查找数字最大的条目时出现问题
我需要一些帮助来回答问题。对于我数据库中至少有一个评级的每部电影,我需要找到该电影获得的最高明星数量。我希望查询返回的数据是movie、title和按movie title排序的星星数 我正在使用的表如下所示:Sql 查找数字最大的条目时出现问题,sql,Sql,我需要一些帮助来回答问题。对于我数据库中至少有一个评级的每部电影,我需要找到该电影获得的最高明星数量。我希望查询返回的数据是movie、title和按movie title排序的星星数 我正在使用的表如下所示: Movie(mID int, title text, year int, director text); Reviewer(rID int, name text); Rating(rID int, mID int, stars int, ratingDate date); 给你: se
Movie(mID int, title text, year int, director text);
Reviewer(rID int, name text);
Rating(rID int, mID int, stars int, ratingDate date);
给你:
select m.title, max(stars)
from movie m join rating r on (m.mid = r.mid)
group by m.mid, m.title
order by m.title;
(哇,在iPhone上这么做真是太难了。)我需要显示每部最有明星的电影的每一次出现。这似乎很有效,但有人能进一步解释这里使用的GROUP BY语句的作用吗。如果没有它,查询将不会返回我想要的正确信息。是否希望所有电影中至少有一个评论的得分等于迄今为止收到的最佳得分?每部电影都有不同的评级(星级)。我想欣赏每一部明星最多的电影。例如,《泰坦尼克号》有两个等级,一个是四星,一个是五星。我希望查询只显示五颗星的条目,因为它是这部电影中星星最多的条目
SELECT
Movie.*,
Rating.Stars
FROM
Movie
INNER JOIN
Rating
ON Movie.mid = Rating.mid
WHERE
Rating.Stars = (SELECT MAX(Stars) FROM Rating)