在MySQL 8.0.18中,增加了Hash Join新功能,它适用于未创建索引的字段,做等值关联查询。在之前的版本里,如果连接的字段没有创建索引,查询速度会是非常慢的,优化器会采用BNL(块嵌套)算法。
Hash Join算法是把一张小表数据存储到内存中的哈希表里,并逐行去匹配大表中的数据,计算哈希值并把符合条件的数据,从内存中返回客户端。
用sysbench生成4张表,并删除默认的k字段索引。
我们用explain format=tree
命令可以查看到已经使用到hash join算法。
但目前8.0.18版本,仅支持join。left join和right join失效,这里请注意。
总结
以上所述是小编给大家介绍的MySQL 8.0.18 Hash Join不支持left/right join左右连接问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
您可能感兴趣的文章:- mysql连接查询(左连接,右连接,内连接)
- SQL 四种连接-左外连接、右外连接、内连接、全连接详解
- MySQL表LEFT JOIN左连接与RIGHT JOIN右连接的实例教程
- mysql的左右内连接用法实例
- 深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接
- sql 左连接和右连接的使用技巧(left join and right join)
- mysql 左连接、右连接和内连接
- 三表左连接查询的sql语句写法
- SQL左连接和右连接原理及实例解析