如何解决MySQL8.0.18HashJoin不支持left/rightjoin左右连接问题

这篇文章主要介绍如何解决MySQL8.0.18 Hash Join不支持left/right join左右连接问题,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

创新互联专业为企业提供紫云网站建设、紫云做网站、紫云网站设计、紫云网站制作等企业网站建设、网页设计与制作、紫云企业网站模板建站服务,十载紫云做网站经验,不只是建网站,更提供有价值的思路和整体网络服务。

在MySQL 8.0.18中,增加了Hash Join新功能,它适用于未创建索引的字段,做等值关联查询。在之前的版本里,如果连接的字段没有创建索引,查询速度会是非常慢的,优化器会采用BNL(块嵌套)算法。

Hash Join算法是把一张小表数据存储到内存中的哈希表里,并逐行去匹配大表中的数据,计算哈希值并把符合条件的数据,从内存中返回客户端。

如何解决MySQL8.0.18 Hash Join不支持left/right join左右连接问题

用sysbench生成4张表,并删除默认的k字段索引。

如何解决MySQL8.0.18 Hash Join不支持left/right join左右连接问题

我们用explain format=tree命令可以查看到已经使用到hash join算法。

但目前8.0.18版本,仅支持join。left join和right join失效,这里请注意。

如何解决MySQL8.0.18 Hash Join不支持left/right join左右连接问题

以上是“如何解决MySQL8.0.18 Hash Join不支持left/right join左右连接问题”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!


当前标题:如何解决MySQL8.0.18HashJoin不支持left/rightjoin左右连接问题
URL标题:http://azwzsj.com/article/jdippg.html