SQL 左连接和右连接

发布时间:2026/7/31 4:25:53
SQL 左连接和右连接 下面为你全面、深入地解析 SQL 左连接(LEFT JOIN)和右连接(RIGHT JOIN),涵盖定义、详细对比、优缺点、使用场景,并重点给出基于索引的性能优化方案与度量标准。1. SQL 左连接和右连接介绍左连接(LEFT JOIN / LEFT OUTER JOIN):返回左表(LEFT JOIN 关键字左边的表)的全部行 + 右表中匹配的行。如果右表没有匹配,则结果中右表部分字段填充为NULL。右连接(RIGHT JOIN / RIGHT OUTER JOIN):返回右表(RIGHT JOIN 关键字右边的表)的全部行 + 左表中匹配的行。如果左表没有匹配,则结果中左表部分字段填充为NULL。核心本质:LEFT JOIN和RIGHT JOIN在功能上是完全等价的,它们只是方向不同。把LEFT JOIN B中的表顺序互换,就变成了RIGHT JOIN A。在实际开发中,左连接的使用频率远高于右连接(因为人们习惯从左往右读)。2. 详细比较(维度对比)比较维度左连接(LEFT JOIN)右连接(RIGHT JOIN)主导表(驱动表)左侧的表(A)右侧的表(B)被驱动表(匹配表)右侧的表(B)左侧的表(A)结果集行数至少为左表行数(一对多时会膨胀)至少为右表行数(一对多时会膨胀)匹配失败结果右表字段为NULL左表字段为NULL可读性与习惯符合自上而下、从左到右的阅读习惯,推荐使用不符合阅读习惯,容易造成逻辑混乱,不推荐相互转换A LEFT JOIN B