中关村在线

软件

MySQL大表小表Join优化

rows表示当前步骤相对于前一步结果需扫描的行数,该SQL需扫描35773乘以8134行,总量极大,处理数据量十分庞大,执行效率将受到显著影响。

1、 原本c表和h表的记录数分别超过4万条和1万条,相当于对这两个表进行笛卡尔积操作的计算量(select * from c,h)。

2、 通过查阅资料了解到,MySQL实现连接操作基于一种名为嵌套循环连接的算法,该机制通过内外层循环匹配数据,从而完成表之间的关联查询。

3、 嵌套循环连接是将驱动表的结果集作为外层循环的基础数据,逐条取出每条记录作为条件,在被驱动表中查找匹配数据,最后将查询结果进行合并输出。

4、 若有第三个表参与连接,则以前两个表的连接结果作为基础数据,循环遍历并依据查询条件在第三个表中检索匹配的数据,完成多表关联操作。

5、 MySQL实现join时,通常采用最直观易懂的算法,循环往复地进行数据匹配与连接操作。

6、 选择合适的驱动表至关重要,其数据量小能大幅减少扫描行数。

展开全文
人赞过该文
内容纠错

相关电商优惠

评论

更多评论
还没有人评论~ 快来抢沙发吧~

读过此文的还读过

点击加载更多

内容相关产品

说点什么吧~ 0

发评论,赚金豆

收藏 0 分享
首页查报价问答论坛下载手机笔记本游戏硬件数码影音家用电器办公打印 更多

更多频道

频道导航
辅助工具