MySQL采用嵌套循环连接的算法
假设驱动表10条记录,被驱动表100条记录,
而被驱动表的连接字段没有创建索引,这样被驱动表会被扫描10次。
Join Buffer 我理解就是 不直接扫描被驱动表,而是缓存下来,
假设缓存了驱动表的10条记录,最终只需要全表扫描一次被驱动表,就可以得到结果了。
参考:
http://hidba.org/?p=300
https://dev.mysql.com/doc/internals/en/join-buffer-size.html
假设驱动表10条记录,被驱动表100条记录,
而被驱动表的连接字段没有创建索引,这样被驱动表会被扫描10次。
Join Buffer 我理解就是 不直接扫描被驱动表,而是缓存下来,
假设缓存了驱动表的10条记录,最终只需要全表扫描一次被驱动表,就可以得到结果了。
参考:
http://hidba.org/?p=300
https://dev.mysql.com/doc/internals/en/join-buffer-size.html
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29254281/viewspace-1159270/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/29254281/viewspace-1159270/