MySQL 查询左连接结果为NULL的行

MySQL 查询左连接结果为NULL的行

在MySQL中,使用”LEFT JOIN”语句时,会产生许多NULL值。我们可以使用以下代码,查询左连接结果为NULL的行。

SELECT *
FROM 表1
LEFT JOIN 表2 ON 表1.关键字 = 表2.关键字
WHERE 表2.关键字 IS NULL;

下面我们来分析一下此代码的作用。

  • 首先,使用SELECT语句,选取表1中所有行。
  • 然后使用LEFT JOIN,连接表1和表2,以关键字匹配。
  • 接着,在WHERE语句中,选取表2的关键字为NULL的行。

举个例子,假设我们有两个表:A表和B表,它们的结构如下所示:

A表:

id name
1 Tom
2 John
3 Lucy

B表:

id phone
1 1234567
2 2345678

现在我们要查询B表中没有对应电话号码的人员,我们可以使用以下代码:

SELECT *
FROM A
LEFT JOIN B ON A.id = B.id
WHERE B.id IS NULL;

此时的输出结果为:

id name phone
3 Lucy

可见,我们成功地查询到了B表中缺席的人员。

阅读更多:MySQL 教程

总结

使用上述代码可以有效地查询左连接结果为NULL的行。充分利用这种技巧,可以更加高效地进行MySQL查询。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程