左连接查询(LEFT JOIN / LEFT OUTER JOIN)是关系型数据库中一种常用的表连接操作,用来查询左表中的所有记录,以及右表中与之匹配的记录。
LEFT JOIN 左边的表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.id, u.name, o.amount
FROM users u
LEFT JOIN orders o
ON u.id = o.user_id;
| id | name | amount |
|---|---|---|
| 1 | 张三 | 100 |
| 1 | 张三 | 200 |
| 2 | 李四 | NULL |
| 3 | 王五 | 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 | 返回左表全部,右表不匹配为 NULL |
如果你愿意,我也可以用 Python(pandas)、MySQL 实例 或 图解方式 再给你讲一遍。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。