一尘不染

如何通过JOIN从另一个表中查找不存在的数据?

mysql

我有两个表TABLE1看起来像:

id      name     address
1       mm     123
2       nn     143

w / c的TABLE2看起来像:

name     age
mm      6
oo      9

我想通过比较来获得非现有名称TABLE1TABLE2

所以基本上,我必须获得第二行,w / c具有NN名称,该名称在中不存在TABLE2,输出应如下所示:

id      name     address
2      nn      143

我已经尝试过了,但是没有用:

SELECt  w.* FROM TABLE1 W INNER JOIN TABLE2 V
  ON W.NAME <> V.NAME

并且仍在获取现有记录。


阅读 866

收藏
2020-05-17

共1个答案

一尘不染

INNER JOIN这里没有帮助。

解决此问题的一种方法是使用LEFT JOIN

SELECT w.* 
FROM TABLE1 W 
LEFT JOIN TABLE2 V ON W.name = V.name
WHERE ISNULL(V.name);
2020-05-17