sort merge join,hash join,netsloop join

203 篇文章 35 订阅 ¥39.90 ¥99.00
本文详细介绍了数据库查询中的三种JOIN操作:sort-merge join(需要先排序,适用于大量数据的不等值连接),nested loops join(适合小规模数据的逐行匹配),以及hash join(通过建立哈希表快速查找匹配项,适用于等值连接)。通过具体的SQL执行计划和统计信息,展示了这三种JOIN在不同场景下的性能表现和优缺点。
摘要由CSDN通过智能技术生成
                                                Join Operations
? SORT-MERGE JOIN
– Sorts tables on the join key and then merges them together
– Sorts are expensive

? NESTED LOOPS
– Retrieves a row from one table and finds the corresponding rows in the other table
– Usually best for small numbers of rows

? HASH JOIN
– Build hash table in memory for smaller row source
– Hash larger row source
– Probe in-memory hash table for matches
– Hash joins are only considered by the CBO



SORT-MERGE JOIN
根据关联列排序2个表,然后再进行merge操作
当然排序是很昂贵的
无驱动表概念

支持不等值连接

嵌套循环:
Oracle从较小结果集(驱动表/外部表)中读取一行,然后和较大结果集(被探查表/内部表)中的所有数据逐条进行比较(嵌套循环可以用于非等值连接),
如果符合规则,就放入结果集中,然后取较小结果集的下一条数据继续进行循环,直到结束。嵌套循环只适合输出少量结果集或者是用于快速输出结果集。


H
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

scan724

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值