SQL JOIN本质是按逻辑关联拼接多表数据,核心在于明确字段来源与关联条件;内连接取交集,左连接保左表全量,多表连接可链式扩展,自连接用于同表层级关系。

SQL JOIN 语句本质是把两个或多个表中“有逻辑关联”的数据拼在一起查,关键不是记语法,而是想清楚:我要哪张表的哪些字段?它们靠什么字段连起来?
内连接(INNER JOIN)——只取双方都有的匹配数据
最常用,适合查“必须同时存在”的关系,比如“查所有下过订单的客户信息”。
- 写法简洁:用 ON 指定关联条件,字段名建议带上表别名避免歧义
- 示例:查客户姓名 + 对应订单号
FROM customers c
INNER JOIN orders o ON c.id = o.customer_id;
注意:如果某个客户没下单,或某条订单 customer_id 为空/无效,这条记录就不会出现。
左连接(LEFT JOIN)——以左表为主,右表缺的填 NULL
适合“主表全量 + 补充信息”的场景,比如“查所有客户,不管有没有订单,顺带显示他们最近一笔订单号”。
版权声明:除非特别标注,否则均为本站原创文章,转载时请以链接形式注明文章出处。
还木有评论哦,快来抢沙发吧~