
如图,students 和workmates 两个表的主键均为id,为什么左连接查询的时候workmates的rows=3而不是等于1呢?为什么这时会使用join buffer?
数据库连接查询的问题
- 写回答
- 好问题 0 提建议
- 关注问题
- 邀请回答
-
2条回答 默认 最新
weixin_41917771 2018-04-07 03:10关注当我们的join是ALL,index,rang或者Index_merge的时候使用的buffer。
实际上这种join被称为FULL JOIN。
实际上参与join的每一个表都需要一个join buffer。
所以在join出现的时候,至少是2个。
join buffer的这只在mysql5.1.23版本之前最大为4G,但是从5.1.23版本开始,再出了windows之外的64为平台上可以超出4GB的限制。
本回答被题主选为最佳回答 , 对您是否有帮助呢?解决 无用评论 打赏 举报