在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失效,这里请注意。

总结

更多相关文章

  1. Linux下MYSQL 5.7 找回root密码的问题(亲测可用)
  2. Android(安卓)10 定位问题,获取NMEA(支持5.0~10.0)
  3. mybatisplus的坑 insert标签insert into select无参数问题的解决
  4. 关于Android(安卓)Studio3.2新建项目Android(安卓)resource link
  5. Android软键盘适配问题
  6. SlidingMenu和ActionBarSherlock结合做出出色的App布局,Facebook
  7. android解决坚屏拍照和保存图片旋转90度的问题,并兼容4.0
  8. Android(安卓)Calendar使用过程中遇到的问题
  9. flutter-使用第三方库,编译和运行版本不一致问题 2

随机推荐

  1. android背景自动伸缩
  2. Android应用程序设置Home Screen
  3. android dialog集合
  4. Android Add new target
  5. Android 清理app所有缓存
  6. Android Getting Started
  7. #android training# Graphics & Animatio
  8. android DatePicker
  9. Android旋转动画不停顿
  10. Android Linux usb gadget configfs