关于SQL的各种Join你知道多少?

SQL中的 join,无外乎 inner join、outer join 以及 cross join,而 inner join 其实就是我们熟知的 join,outer join 其实就是 left outer join、right outer join 和 full outer join。

inner join

通过连接键列中的值进行匹配,仅相同键值的记录在结果集中,两个表中没有匹配的记录不包括在结果集中。

LEFT OUTER JOIN

LEFT OUTER JOIN (或 LEFT JOIN)返回左表中的所有内容,右表中匹配的行以及右表中没有匹配的记录用 NULL 填充。

RIGHT OUTER JOIN

RightOUTERJOIN (或 RightJOIN)返回右表中的所有内容,匹配的行在左表中,坐标中没有匹配的记录填充为 NULL。

FULL OUTER JOIN

在 FULL OUTER JOIN(或 FULL JOIN)中,记录由连接键列中的值进行匹配,相同键值的记录将被匹配,而两个表中不匹配的记录将被填充为 NULL。

CROSS JOIN

CROSS JOIN: 返回表1的每一行和表2的每一行的笛卡儿积,所以如果表1包含6行,表2包含5行,结果将产生30个结果(6 * 5 = 30)

总结

扩展

left anti join 和 right anti join

相关推荐
咚为几秒前
告别 lazy_static:深度解析 Rust OnceCell 的前世今生与实战
开发语言·后端·rust
代码探秘者13 分钟前
【大模型应用】5.深入理解向量数据库
java·数据库·后端·python·spring·面试
逍遥德18 分钟前
Postgresql explain执行计划详解
数据库·后端·sql·postgresql·数据分析
清汤饺子32 分钟前
$20 的 Cursor Pro 额度,这样用一个月都花不完
前端·javascript·后端
WZTTMoon41 分钟前
Spring Boot 启动报错:OpenFeign 隐性循环依赖,排查了整整一下午
java·spring boot·后端·spring cloud·feign
波波0074 小时前
ASP.NET MVC 中的返回类型全集详解
后端·asp.net·mvc
糟糕好吃9 小时前
我让 AI 操作网页之后,开始不想点按钮了
前端·javascript·后端
leonkay10 小时前
Golang语言闭包完全指南
开发语言·数据结构·后端·算法·架构·golang
颜酱10 小时前
BFS 与并查集实战总结:从基础框架到刷题落地
javascript·后端·算法
无限大611 小时前
数字生存02:如何在信息爆炸的时代保持清醒,不被算法控制
后端