left join如何返回左表所有记录

avatar
作者
猴君
阅读量:0

在 SQL 中,LEFT JOIN 会返回左表(即第一个表)的所有记录,即使右表中没有匹配的记录。对于右表中没有匹配的记录,结果集中的相关列将显示为 NULL。

以下是一个简单的示例,说明如何使用 LEFT JOIN 返回左表的所有记录:

假设我们有两个表:employeesdepartments

employees 表结构如下:

idnamedepartment_id
1Alice1
2BobNULL
3Carol2

departments 表结构如下:

idname
1HR
2Finance

如果我们想要查询所有员工及其所属部门(即使某些员工没有分配部门),我们可以使用以下 LEFT JOIN 查询:

SELECT employees.id, employees.name, departments.name AS department_name FROM employees LEFT JOIN departments ON employees.department_id = departments.id; 

查询结果将如下所示:

idnamedepartment_name
1AliceHR
2BobNULL
3CarolFinance

可以看到,LEFT JOIN 返回了 employees 表中的所有记录,即使某些员工没有分配部门(在 departments 表中没有对应的记录)。

广告一刻

为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!