一尘不染

MySQL“ NOT IN”查询

mysql

我想运行一个简单的查询,以抛出所有Table1其他表(Table2)的列中不存在主体列值的行。

我尝试使用:

SELECT * FROM Table1 WHERE Table1.principal NOT IN Table2.principal

而是抛出语法错误。Google搜索使我进入了一个论坛,那里的人们说MySQL不支持NOT IN,因此需要使用一些极其复杂的东西。这是真的?还是我犯了一个可怕的错误?


阅读 269

收藏
2020-05-17

共1个答案

一尘不染

要使用IN,您必须有一个set,请改用以下语法:

SELECT * FROM Table1 WHERE Table1.principal NOT IN (SELECT principal FROM table2)
2020-05-17