数据库左连接(LEFT JOIN,也叫 LEFT OUTER JOIN) 是一种 SQL 连接(JOIN)方式,用来查询左表中的所有记录,以及右表中匹配的记录。
FROM 后面的表LEFT JOIN 后面的表SELECT 列名
FROM 左表
LEFT JOIN 右表
ON 左表.字段 = 右表.字段;
users(用户表)
| id | name |
|---|---|
| 1 | 张三 |
| 2 | 李四 |
| 3 | 王五 |
orders(订单表)
| id | user_id | amount |
|---|---|---|
| 1 | 1 | 100 |
| 2 | 1 | 200 |
SELECT u.name, o.amount
FROM users u
LEFT JOIN orders o
ON u.id = o.user_id;
| name | amount |
|---|---|
| 张三 | 100 |
| 张三 | 200 |
| 李四 | NULL |
| 王五 | NULL |
✅ 所有用户都出现了
❌ 没有订单的用户,订单字段为 NULL
SELECT u.name
FROM users u
LEFT JOIN orders o
ON u.id = o.user_id
WHERE o.id IS NULL;
| 类型 | 是否保留左表全部 | 是否只返回匹配 |
|---|---|---|
| INNER JOIN | ❌ | ✅ |
| LEFT JOIN | ✅ | ❌ |
如果你愿意,我也可以用 图示例子 / 不同数据库(MySQL、PostgreSQL、Oracle)写法 / 多表左连接 来进一步说明。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。