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

相关推荐
IT_陈寒7 分钟前
垃圾回收器选错了,我的Java服务内存炸了
前端·人工智能·后端
用户8356290780511 小时前
使用 Python 在 PDF 中创建与管理书签
后端·python
Nturmoils1 小时前
字段太多看不全,ksql 的展开模式和输出控制怎么用
数据库·后端
大志说编程1 小时前
Agent面试真题06: 十分钟带你快速掌握Agent记忆管理高频面试题(附详细答案)
后端·面试·ai编程
ServBay1 小时前
Claude Code 被曝植入后门,AI 时代如何安全打造本地 DevOps
后端·ai编程·claude
王二端茶倒水1 小时前
从千兆到万兆:宽带运营不能只卖套餐,要管用户生命周期从千兆到万兆:宽带运营需要管理用户生命周期
后端·网络协议·架构
网易云信2 小时前
重磅认证!网易智企智能融合通信获鸿蒙生态权威认可,斩获「Harmony Trusted SDK」认证
人工智能·后端·aigc
神奇小汤圆2 小时前
我把祖传Java项目重构后,接口响应从3s砍到了200ms,只改了这几行代码
后端
神奇小汤圆3 小时前
面试官:你们项目里的线程池是怎么用的?怎么管理的?
后端