我有这些MySQL表:
表1:
id | writer
1 | Bob
2 | Marley
3 | Michael
表格2:
user_one | user_two
1 | 2
并且这个查询语句:
SELECT table1.id FROM table1 LEFT JOIN table2 ON table1.id = table2.user_one
这个查询将返回table1中所有的行,其中包括1、2、3。
我想只选择左连接中未找到的行。所以它应该仅返回带有id 3
的行。
我想要INNER JOIN的相反操作,它将仅选择在JOIN中找到的行。如何获得相反效果,例如如果左连接存在,则忽略它并移动到下一行。希望我表达清楚。
where table2.user_one is null
。 - Gordon Linoffwhere table2.user_one is null
的逻辑,因为我认为它会返回 2 和 3,但用户只想要 3。 - Ankit Bajpaitable2
的结构是什么?有两列user_one
和user_two
吗? - Joël Salamin