17#include "sql/parser/parse.h"
18#include "sql/operator/physical_operator.h"
33 return PhysicalOperatorType::NESTED_LOOP_JOIN;
36 RC open(
Trx *trx)
override;
39 Tuple *current_tuple()
override;
51 Tuple *left_tuple_ =
nullptr;
52 Tuple *right_tuple_ =
nullptr;
将两个tuple合并为一个tuple
Definition: tuple.h:380
最简单的两表(称为左表、右表)join算子
Definition: join_physical_operator.h:26
PhysicalOperator * left_
左表右表的真实对象是在PhysicalOperator::children_中,这里是为了写的时候更简单
Definition: join_physical_operator.h:49
bool right_closed_
右表遍历的一轮是否结束
Definition: join_physical_operator.h:55
RC right_next()
左表遍历下一条数据
Definition: join_physical_operator.cpp:104
Trx * trx_
右表遍历下一条数据,如果上一轮结束了就重新开始新的一轮
Definition: join_physical_operator.h:46
bool round_done_
当前关联的左右两个tuple
Definition: join_physical_operator.h:54
与LogicalOperator对应,物理算子描述执行计划将如何执行
Definition: physical_operator.h:57
事务接口
Definition: trx.h:142
元组的抽象描述
Definition: tuple.h:84
PhysicalOperatorType
物理算子类型
Definition: physical_operator.h:39