Nested Loops Join、Hash join、Merge Sort Join三大经典表连接浅谈(笔记)

今天上完梁老师的课,感觉表连接的意义非常深刻,知识消化可以转化成Sql优化方面的强力武器!

必须认真记下来!

一、SQL写法上的限制(CBO选择执行计划时的限制)
Nested Loops Jion:无限制
Hash Join:作为经典的等值算法,不支持非等值条件(like、>、<、<>)
Merge Sort Join:支持>、<,不支持like和<>

二、各自特性

表访问次数:
Nested Loops Jion:驱动结果集的条数决定被驱动表的访问次数
Hash Join:两表各自只被访问1次或0次
Merge Sort Join:两表各自只被访问1次或0次

表驱动顺序与性能:
Nested Loops Jion:记录少的表作为驱动表性能更好
Hash Join:记录少的表作为驱动表性能更好
Merge Sort Join:顺序与性能无关

是否排序:
Nested Loops Jion:不排序
Hash Join:不排序但是消耗内存
Merg

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值