我有以下表格。
genre:
genre_id
name
actors:
actor_id
name
movies:
movie_id
actor_id
genre_id
title
我有以下查询来选择所有具有genre_id 3的演员。
select a.name, m.genre_id from
actors as a
, movies as m
where
m.genre_id = 3;
是否可以在没有“movie为m”的情况下进行查询,因为我不需要m.genre_id。我只想显示演员姓名。
答案 0 :(得分:4)
如果genre_id是您拥有的唯一信息,则必须加入电影....
select a.name
from actors as a
inner join movies as m on a.actor_id = m.actor_id
where m.genre_id = 3;
答案 1 :(得分:2)
CSharpAtl拥有它,但作为替代方案:
select a.name
from actors a
where actor_id in (select m.actor_id
from movies m
where a.actor_id = m.actor_id
and genre_id = 3)