关于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

相关推荐
lay_liu4 小时前
springboot 文件下载
java·spring boot·后端
2601_949816169 小时前
spring.profiles.active和spring.profiles.include的使用及区别说明
java·后端·spring
helx8210 小时前
SpringBoot实战(三十二)集成 ofdrw,实现 PDF 和 OFD 的转换、SM2 签署OFD
spring boot·后端·pdf
rOuN STAT11 小时前
Skywalking介绍,Skywalking 9.4 安装,SpringBoot集成Skywalking
spring boot·后端·skywalking
bilI LESS12 小时前
Spring Boot接收参数的19种方式
java·spring boot·后端
web前端进阶者13 小时前
Rust初学知识点快速记忆
开发语言·后端·rust
七夜zippoe13 小时前
API设计规范:RESTful API设计与OpenAPI(Swagger)完整指南
后端·restful·设计规范
2601_9498177214 小时前
Spring+SpringMVC项目中的容器初始化过程
java·后端·spring
青柠代码录14 小时前
【SpringBoot】集成 Knife4j
后端
杰克尼14 小时前
SpringCloud_day04
后端·spring·spring cloud