温馨提示×

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

小樊
137
2024-10-10 10:01:48
栏目: 编程语言
开发者测试专用服务器限时活动,0元免费领,库存有限,领完即止! 点击查看>>

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

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

假设我们有两个表:employeesdepartments

employees 表结构如下:

id name department_id
1 Alice 1
2 Bob NULL
3 Carol 2

departments 表结构如下:

id name
1 HR
2 Finance

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

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

查询结果将如下所示:

id name department_name
1 Alice HR
2 Bob NULL
3 Carol Finance

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

亿速云「云服务器」,即开即用、新一代英特尔至强铂金CPU、三副本存储NVMe SSD云盘,价格低至29元/月。点击查看>>

推荐阅读:left join与right join有何不同

0