我有两个MySQL表:
+-----------+ +-----------+
| id.Table1 | | id.Table2 |
+-----------+ +-----------+
| 1 | | 2 |
| 2 | | 3 |
| 3 | | 4 |
| 4 | +-----------+
| 5 |
+-----------+
我想要查询此结果:
+-----------+
| id.Table1 |
+-----------+
| 1 |
| 5 |
+-----------+
我该怎么做?
答案 0 :(得分:0)
一种方法是使用NOT IN
子句:
SELECT ID FROM TABLE1 WHERE ID NOT IN (SELECT ID FROM TABLE2)
答案 1 :(得分:0)
尝试NOT EXISTS
SELECT ID FROM TABLE1 as a WHERE NOT EXISTS (SELECT ID FROM TABLE2 as b where a.ID=b.ID)
答案 2 :(得分:0)
您可以LEFT JOIN
使用NULL
检查来获得结果。工作查询是:
SELECT T1.Id
FROM Table1 T1
LEFT JOIN Table2 T2 ON T2.Id = T1.Id
WHERE T2.Id IS NULL