MySQL blocked nested loop join(bnl)和index nested loop join(inl)

2021/12/16 2:45:56

本文主要是介绍MySQL blocked nested loop join(bnl)和index nested loop join(inl),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

blocked nested loop join使用了数组arr[join_buffer_size],如果外层小表数量把数组撑满了,然后到内层大表中全表扫描查询数据,把符合条件的数据保存下来,然后清空数组,再到外层小表中把数组撑满如此往复,直到小表没数据了,查询也就结束了,内层大表查询不用索引,也可以测试内层大表用了索引查询性能如何。

index nested loop join是外层小表查询一条数据,然后到内层大表中使用索引查询匹配的一条数据返回,然后循环下一个内层小表中的数据,如此往复,直到小表数据都查询结束,所以内层大表必须有索引,不然速度很慢。



这篇关于MySQL blocked nested loop join(bnl)和index nested loop join(inl)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程