Вы можете JOIN
все три таблицы вместе и применить оба условия WHERE
.
Вот пример.Предполагается, что ваша таблица movie
присоединяется к вашей таблице role
в столбце с именем movie_id
, а также предполагается, что у вас есть столбец person_id
в role
и person
, чтобы присоединиться к ним.Вам нужно изменить этот запрос, чтобы использовать столбцы, используемые в ваших таблицах.
SELECT
p.person_name
FROM
movie m
INNER JOIN role r
ON (m.movie_id=r.movie_id)
INNER JOIN person p
ON (r.person_id=p.person_id)
WHERE
m.movie_name='Alien'
AND p.gender='f'
Редактировать : я использовал INNER JOIN
здесь, с предположением, что столбцыприсоединяйтесь, в отличие от сохранения ОП NATURAL JOIN
.Как уже упоминалось в комментариях к ФП, передовой практикой является явная идентификация соединений, а не использование NATURAL JOIN
.