You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

关于两张SQL表Inner Join返回12行结果的原因咨询

为什么Inner Join返回12行结果?

这是因为Inner Join的匹配逻辑是将两张表中满足关联条件的记录进行笛卡尔积组合,不是只保留原表的行数,具体计算如下:

先明确两张表的分组数据:

  • 表ab中,值为1的有3行,值为2的有2行
  • 表bc中,值为1的有2行,值为2的有3行

Inner Join会把两张表中a.a = b.b的每一组匹配记录两两组合:

  • 当匹配值为1时:ab的3行 × bc的2行 = 6行结果
  • 当匹配值为2时:ab的2行 × bc的3行 = 6行结果

两者相加6+6=12行,这就是最终返回的行数。

简单来说,只要两张表中有多条相同的匹配值,每一条都会互相配对生成新行,而不是只保留原表的行数。

内容的提问来源于stack exchange,提问作者vish

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.09 08:35:21