17#include "sql/operator/physical_operator.h"
18#include "sql/expr/tuple.h"
24 : expressions_(std::move(expressions)), tuple_(expressions_)
31 return PhysicalOperatorType::CALC;
34 std::string
name()
const override
38 std::string param()
const override
43 RC open(
Trx *trx)
override {
return RC::SUCCESS;}
54 for (
int i = 0; i < cell_num; i++) {
63 RC close()
override {
return RC::SUCCESS; }
70 Tuple *current_tuple()
override
75 const std::vector<std::unique_ptr<Expression>> &expressions()
const
81 std::vector<std::unique_ptr<Expression>> expressions_;
83 bool emitted_ =
false;
Definition: calc_physical_operator.h:21
std::string name() const override
Definition: calc_physical_operator.h:34
int cell_num() const override
获取元组中的Cell的个数
Definition: tuple.h:305
RC cell_at(int index, Value &cell) const override
获取指定位置的Cell
Definition: tuple.h:310
与LogicalOperator对应,物理算子描述执行计划将如何执行
Definition: physical_operator.h:57
事务接口
Definition: trx.h:142
元组的抽象描述
Definition: tuple.h:84
属性的值
Definition: value.h:40
PhysicalOperatorType
物理算子类型
Definition: physical_operator.h:39