服务器之家:专注于服务器技术及软件下载分享
分类导航

Mysql|Sql Server|Oracle|Redis|MongoDB|PostgreSQL|Sqlite|DB2|mariadb|

服务器之家 - 数据库 - Mysql - MySQL 8.0.18 Hash Join不支持left/right join左右连接问题

MySQL 8.0.18 Hash Join不支持left/right join左右连接问题

2020-12-14 21:35hcymysql Mysql

在MySQL 8.0.18中,增加了Hash Join新功能,它适用于未创建索引的字段,做等值关联查询。这篇文章给大家介绍MySQL 8.0.18 Hash Join不支持left/right join左右连接,感兴趣的朋友一起看看吧

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

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

MySQL 8.0.18 Hash Join不支持left/right join左右连接问题

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

MySQL 8.0.18 Hash Join不支持left/right join左右连接问题

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

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

MySQL 8.0.18 Hash Join不支持left/right join左右连接问题

总结

以上所述是小编给大家介绍的MySQL 8.0.18 Hash Join不支持left/right join左右连接问题,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对服务器之家网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!

原文链接:https://blog.51cto.com/hcymysql/2447650

延伸 · 阅读

精彩推荐