16#include "sql/operator/logical_operator.h"
17#include "storage/field/field.h"
18#include "common/types.h"
31 LogicalOperatorType type()
const override {
return LogicalOperatorType::TABLE_GET; }
33 OpType
get_op_type()
const override {
return OpType::LOGICALGET; }
35 virtual uint64_t
hash()
const override {
return 0; }
37 virtual bool operator==(
const OperatorNode &other)
const override {
return false; }
39 unique_ptr<LogicalProperty>
find_log_prop(
const vector<LogicalProperty *> &log_props)
override;
41 Table *table()
const {
return table_; }
42 ReadWriteMode read_write_mode()
const {
return mode_; }
44 void set_predicates(vector<unique_ptr<Expression>> &&exprs);
45 auto predicates() -> vector<unique_ptr<Expression>> & {
return predicates_; }
48 Table *table_ =
nullptr;
49 ReadWriteMode mode_ = ReadWriteMode::READ_WRITE;
55 vector<unique_ptr<Expression>> predicates_;
逻辑算子描述当前执行计划要做什么
Definition: logical_operator.h:50
Definition: operator_node.h:69
表示从表中获取数据的算子
Definition: table_get_logical_operator.h:26
unique_ptr< LogicalProperty > find_log_prop(const vector< LogicalProperty * > &log_props) override
Generate the logical property of the operator node using the input logical properties.
Definition: table_get_logical_operator.cpp:28
virtual uint64_t hash() const override
Definition: table_get_logical_operator.h:35
OpType get_op_type() const override
Definition: table_get_logical_operator.h:33