imdb数据库有以下表
actors(id, first_name, last_name, gender)
directors(id, first_name,last_name)
directors_genres(director_id, genre, prob)
movies(id, name,year, rank)
movies_directors(director_id, movie_id)
roles(actor_id,movie_id, role)
movies_genres(movie_id, genre)
a) 写一个查询,列出那些在90年代(1990-1999年)出演过一部评分高于8.5分的电影的女演员。
b) 写一个查询,列出所有演员谁在一部电影评分低于3.0两次或两次以上。列出演员的名字、电影和每个级别,按演员的姓和名升序排列。
c) 写一个查询,列出所有演员谁在两个或两个以上的不同类型的电影。列出他们的名字,电影和各自的类型。
我的答案是:
(一)
SELECT actors.firstname
from ((roles inner join movies on roles.mid=movies.id)
inner join actors on actors.id=roles.aid)
where (movies.year between 1990 and 1999)
and
(movies.rank >= 8.5)
. 对吗?
任何人都能帮助解决其他问题。提前谢谢
3条答案
按热度按时间gopyfrb31#
你忘记了性别,高于8.5(不高于或等于)。
p、 这是你的作业吗?
lf5gs5x22#
还有一个变体:
jhkqcmku3#
将角色添加到actors表