как сделать запрос без определения начального имени таблицы? - PullRequest
0 голосов
/ 27 мая 2009

У меня есть следующие таблицы.

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;

возможно ли сделать запрос без "movies as m", поскольку мне не нужен m.genre_id. Я просто хочу показать имя актера.

Ответы [ 2 ]

4 голосов
/ 27 мая 2009

Необходимо присоединиться к фильмам, если 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;
2 голосов
/ 27 мая 2009

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)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...