您的位置:首页 > 其它

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

2015-08-23 11:55 337 查看

排序合并连接(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开始扫描
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: