温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Inner Join和左连接区别

发布时间:2026-11-02 01:03:29 来源:亿速云 阅读:105 作者:小樊 栏目:数据库

在 SQL 中,INNER JOIN(内连接) 和 LEFT JOIN(左连接,也称左外连接) 是最常见的两种表连接方式,核心区别在于是否保留“左表中没有匹配到的数据”。

下面用直观对比说明:


一、INNER JOIN(内连接)

含义:
只返回两张表中都能匹配上的数据。

特点:

  • 左表 + 右表
  • 只保留:左表某行能在右表找到匹配行的结果
  • 不匹配的行直接丢弃

示例:

SELECT A.id, B.name
FROM A
INNER JOIN B ON A.id = B.a_id;

结果:

  • 如果 A 中有 10 条,B 中只有 6 条能匹配
  • 最终结果只有 6 条

✅ 适合:只关心“有关联的数据”


二、LEFT JOIN(左连接)

含义:
以左表为主,返回左表所有数据;右表能匹配就匹配,不能匹配就补 NULL。

特点:

  • 左表数据一定全保留
  • 右表只保留能匹配的部分
  • 匹配不到 → 右表字段为 NULL

示例:

SELECT A.id, B.name
FROM A
LEFT JOIN B ON A.id = B.a_id;

结果:

  • A 有 10 条 → 结果至少 10 条
  • B 没匹配的,name 为 NULL

✅ 适合:要“左表全部 + 右表补充信息”


三、对比总结表

对比项 INNER JOIN LEFT JOIN
左表数据 只返回匹配的 全部返回
右表数据 只返回匹配的 匹配+NULL
结果行数 ≤ 两表行数 ≥ 左表行数
是否可能 NULL 否 是(右表字段)

四、记忆口诀

INNER:有缘才相见
LEFT:左表全留下,右表随缘

如果你愿意,我也可以用**具体业务例子(如订单表、用户表)**再帮你细化说明。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手