mysql join 算法_MySQL中Join算法实现原理分析

论坛 期权论坛 编程之家     
选择匿名的用户   2021-6-2 18:03   5726   0

在MySQL 中,只有一种 Join 算法,就是大名鼎鼎的 Nested Loop Join,他没有其他很多数据库所提供的 Hash Join,也没有 Sort Merge Join。顾名思义,Nested Loop Join 实际上就是通过驱动表的结果集作为循环基础数据,然后一条一条的通过该结果集中的数据作为过滤条件到下一个表中查询数据,然后合并结果。如果还有第三个参与 Join,则再通过前两个表的 Join 结果集作为循环基础数据,再一次通过循环查询条件到第三个表中查询数据,如此往复。

还是通过示例和图解来说明吧,后面将通过我个人数据库测试环境中的一个 example(自行设计,非MySQL 自己提供) 数据库中的三个表的 Join 查询来执行

示例。

留心

:由于这里有些内容须要

在MySQL 5.1.18之后的版本中才会体现出来,所以本测试的MySQL 版本为5.1.26

表结构:

1 sky@localhost : example 11:09:32> show create table user_group\G

2

3 *************************** 1. row ***************************

4

5 table: user_group

6

7 Create table: CREATE table `user_group` (

相关软件

3a67c1730c66cbe93f57b9190235815a.png

2420431adc497bc5e9f00d00366f78a5.png

友情手机站官方微信

关注微信公众号

友情下载——安全可靠的最新手机游戏软件下载基地

友情下载 m.yqdown.com All Rights Reserved.

分享到 :
0 人收藏
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

积分:3875789
帖子:775174
精华:0
期权论坛 期权论坛
发布
内容

下载期权论坛手机APP