【发布时间】:2017-07-04 19:02:32
【问题描述】:
我有一个 sql 语句的开头,我应该在其中找到与汤姆汉克斯在同一部电影中扮演过的所有演员。
select a.name, m.title
from actor a
inner join character c
inner join movie m
on a.id = c.actor_id
on c.movie_id = m.id
where a.name = 'Tom Hanks'
但是,这段代码只给了我汤姆汉克斯演过的所有电影的名字,而不是每个演员的名字。
表格是这样的
Actor:
ID
name
Primary Key: ID
Character:
Actor_ID
Movie_ID
Character
Primary Key: (actor_id, movie_id, character)
Foreign Key: actor_id references actor(id)
Foreign Key: movie_id references movie(id)
Movie:
ID
Title
Year
Mpaa_rating
Audience_score
Critics_score
Primary Key: ID
我已经用不同的子查询和内部连接搞砸了一段时间,但似乎无法弄清楚我做错了什么。
【问题讨论】:
标签: sql subquery inner-join