总所周知,Oracle数据库常用的两种优化器:RBO(rule-based-optimizer)和CBO(cost-based-optimizer)。目前更多地采用CBO(cost-based-optimizer)基于开销的优化器。在CBO方式下,Oracle会根据表及索引的状态信息来选择计划;在RBO方式下,Oracle会根据自己内部设置的一些规则来决定选择计划。
——在Sort-Merge Join(SMJ),两张表的数据都需要先做排序,然后做merge。因此效率相对最差
——Nested-Loop Join(NL)效率比SMJ更高。特别是当驱动表的数据量很大(集的势高)时。这样可以并行扫描内表。
——Hash join效率最高,因为只要对两张表扫描一次。
Hash Join, Nested Loop, Sort-Merge Join
最新推荐文章于 2025-12-02 22:44:12 发布
本文深入探讨Oracle数据库中不同JOIN技术的特点与应用场景,包括Nested Loop Join、Hash Join与Merge Join等,对比它们在不同条件下的性能表现,帮助读者理解如何根据实际需求选择最优JOIN策略。
4169

被折叠的 条评论
为什么被折叠?



