排序合并连接(sort merge join)的原理


排序合并连接(sort merge join)的原理

 

排序合并连接(sort merge join)的原理
 
 
排序合并连接(sort merge join)
 
    访问次数:两张表都只会访问0次或1次。
    驱动表是否有顺序:无。
    是否要排序:是。
    应用场景:当结果集已经排过序。
 
排序合并连接原理:如果A表的数据为(2,1,4,5,2),B表的数据为(2,2,1,3,1) ,首先将A表和B表 全扫描后排序,如下:
 
              A    B
 
              1     1
 
              2     1
 
              2     2
 
              4     2
 
              5     3
 
因为没有驱动表,所以数据库会随机选择一张表驱动,如果选择了A扫描到1,然后扫描B,当扫描=1的时候则匹配
当扫描到B=2时,再以B=2为驱动扫描A表,不是从1开始扫,而是从2开始扫描,交替的进行扫描、关联。
 
This works because both relations are sorted and therefore you don’t need to “go back” in these relations.
也就是说:不是从1重新开始扫,而是从2开始扫描
 
 
 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM