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