【发布时间】:2025-11-27 04:35:02
【问题描述】:
我有这些 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 相反的类型,它将只选择在连接中找到的行。如果左连接存在,如何获得相反的结果,忽略它并移动到下一行。希望我清楚
【问题讨论】:
-
添加
where table2.user_one is null。 -
@GordonLinoff 对我来说,请您解释一下这个逻辑来添加
where table2.user_one is null,因为我认为它会同时返回 2 和 3,但用户只想要 3。 -
table2的结构是什么?两列user_one和user_two?