如何显示第二个表中没有出现在第一个表中的结果?

时间:2017-11-11 21:23:37

标签: mysql sql

我有2张桌子"电影"和#34;门票"

让我们说我有ID_Film:1,2,3,4和外键#34;门票"有ID_Film:1,2。

我想要显示不在"门票"中的电影标题,以及ID 3和4。

这是我尝试过的,但它没有显示任何记录,结果是空的

SELECT Films.Title_Film 
FROM Films INNER JOIN Tickets ON Films.ID_Film=Tickets.ID_Film
WHERE Tickets.ID_Film NOT IN
(
  SELECT ID_Film FROM Films
)

2 个答案:

答案 0 :(得分:1)

不要使用JOIN并修改查询的WHERE子句。希望这会有所帮助。

SELECT Films.Title_Film FROM Films WHERE Films.ID_Film NOT IN
(
 SELECT ID_Film FROM Tickets
);

答案 1 :(得分:-1)

您不需要内部联接,只需下面的查询即可。

SELECT Films.Title_Film
FROM Films
WHERE Films.ID_Film NOT IN
(
   SELECT ID_Film FROM Tickets
)