在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左右连接问题,希望对大家有所帮助
如对本文有疑问, 点击进行留言回复!!
在Ubuntu/Linux环境下使用MySQL开放/修改3306端口和开放访问权限
ORM框架Peewee(高级连接)peewee连接池、主从、重连、ssh连接
记一次Mysql主从复制延迟,Waiting for dependent transaction to commit
网友评论