左连接和左外连接的主要区别在于输出结果中来自左表的行:左连接:返回所有匹配左表和右表的行,不匹配的行被排除在外。左外连接:返回左表的所有行,对于匹配右表的行返回匹配值,对于不匹配的行返回 NULL 值。

左连接与左外连接的区别
左连接和左外连接是两个在 SQL 中常用的连接操作,用于从不同表中获取数据。主要区别在于左连接会返回所有来自左表(或驱动表)的行,而左外连接会返回所有来自左表的行,以及来自右表(或从属表)的匹配行或 NULL 值。
左连接 (INNER JOIN)
- 返回来自左表和右表的匹配行。
- 只有当右表中有匹配的记录时,才会返回左表中的行。
- 如果右表中没有匹配的记录,则左表中的行将被排除在外。
左外连接 (LEFT JOIN)
- 返回来自左表的所有行。
- 对于在右表中找到匹配的左表行,返回匹配的右表列值。
- 对于在右表中没有匹配的左表行,返回 NULL 值。
示例
使用以下表进行说明:
表 A
因为这几个版本主要以系统的运行稳定着想, 所以在功能方面并没什么大的改进,主要是对系统的优化,及一些BUG或者不太人性化的地方修改,此次版本在速度上较上版本有了50%左右的提升。WRMPS 2008 SP2 升级功能说明1,新增伪静态功能2,新增全屏分类广告功能3,新增地区分站代理功能!4,新增分站独立顶级域名支持5,新增友情连接支持分城市功能6,新增支持百度新闻规范7,新增自由设置关键词及网页
| ID | 名称 |
|---|---|
| 1 | John |
| 2 | Mary |
| 3 | Bob |
表 B
| ID | 部门 |
|---|---|
| 1 | 销售 |
| 2 | 营销 |
左连接查询:
SELECT * FROM A INNER JOIN B ON A.ID = B.ID;
结果:
| ID | 名称 | 部门 |
|---|---|---|
| 1 | John | 销售 |
| 2 | Mary | 营销 |
左外连接查询:
SELECT * FROM A LEFT JOIN B ON A.ID = B.ID;
结果:
| ID | 名称 | 部门 |
|---|---|---|
| 1 | John | 销售 |
| 2 | Mary | 营销 |
| 3 | Bob | NULL |
如您所见,左外连接返回了表 A 中的所有行,即使在表 B 中没有匹配的记录,也会返回 NULL 值。









