join的实现原理
simple Nested-Loop Join
Index Nested-Loop Join
Block Nested-Loop Join
(1)Join Buffer會緩存所有參與查詢的列而不是只有Join的列。
(2)可以通過調(diào)整join_buffer_size緩存大小
(3)join_buffer_size的默認(rèn)值是256K,join_buffer_size的最大值在MySQL 5.1.22版本前是4G-1,而之后的版本才能在64位操作系統(tǒng)下申請大于4G的Join Buffer空間。
(4)使用Block Nested-Loop Join算法需要開啟優(yōu)化器管理配置的optimizer_switch的設(shè)置block_nested_loop為on,默認(rèn)為開啟。
(5) show variables like ‘%optimizer_switch%’;
總結(jié)
- 上一篇: 覆盖索引
- 下一篇: java需要知道的计算机底层