0
我有利用三个表的模式:排除值与子查询
- 演员名单和间隔actor_id电影片名的
- 列表和间隔movid_id
是编目两个这样的表如下面的一个:
CREATE TABLE actors_movies ( actor_movie_id INT AUTO_INCREMENT, actor_id INT, movie_id INT, PRIMARY KEY (actor_movie_id), KEY actor_id (actor_id), KEY movie_id (movie_id) );
我想编写一个查询,显示所有一个演员没有参与的电影。我遇到的问题是一部电影可能有多个演员。所以,即使你根据id或名字排除了演员,该电影仍然可以被拖入结果中。
我试图写下面的查询,但它有点多余和手动。我如何利用子查询来压制演员所在的电影,并将多个演员的问题考虑在内?
SELECT movie_name
FROM movies as m
JOIN actors_movies as am on m.movie_id = am.movie_id
JOIN actors as a on a.actor_id = am.actor_id
WHERE actor_name <> 'actor_name'
AND am.movie_id NOT IN(4,14);
任何帮助将不胜感激!
我相信这就是我一直在寻找。谢谢! – user2356890