多表连接left join 是怎么实现的。

今天突然想到 一个问题,左连接我们看到的是 以左边的表为基础表将连接条件符合的 右边的表记录列出来。

那么问题来了,是怎么实现的。我们理解的只是表现出来的,那内部的数据是怎么进行流转以及变动的呢?

我理解

1.指针会将右边表中作为连接条件的字段,拿出来一个个到左边表中跟目标字段进行对比。、

2. 当指针遍历查到 有相同的值的时候,会先将这些值保存到一个类似于数组之类的一个目标中

3.当遍历结束后,将数组中的数据到右边的表中拿到这个条数据,这里暂时称为右表符合条件的N条数据

4.根据查询条件,将对应字段显示出来。

 

当然这是我的一点理解,也希望有大佬给解解惑。百度了好久也没查到,如果能提供学习途径也希望能告知。

posted @ 2022-09-06 14:38  马蹄烧饼  阅读(289)  评论(0编辑  收藏  举报