|
MiniOB 1
MiniOB is one mini database, helping developers to learn how database works.
|
比较表达式 更多...
#include <expression.h>
Public 成员函数 | |
| ComparisonExpr (CompOp comp, std::unique_ptr< Expression > left, std::unique_ptr< Expression > right) | |
| ExprType | type () const override |
| 表达式的类型 可以根据表达式类型来转换为具体的子类 更多... | |
| RC | get_value (const Tuple &tuple, Value &value) const override |
| 根据具体的tuple,来计算当前表达式的值。tuple有可能是一个具体某个表的行数据 更多... | |
| AttrType | value_type () const override |
| 表达式值的类型 更多... | |
| CompOp | comp () const |
| std::unique_ptr< Expression > & | left () |
| std::unique_ptr< Expression > & | right () |
| RC | try_get_value (Value &value) const override |
| RC | compare_value (const Value &left, const Value &right, bool &value) const |
Public 成员函数 继承自 Expression | |
| virtual RC | get_value (const Tuple &tuple, Value &value) const =0 |
| 根据具体的tuple,来计算当前表达式的值。tuple有可能是一个具体某个表的行数据 更多... | |
| virtual RC | try_get_value (Value &value) const |
| 在没有实际运行的情况下,也就是无法获取tuple的情况下,尝试获取表达式的值 更多... | |
| virtual ExprType | type () const =0 |
| 表达式的类型 可以根据表达式类型来转换为具体的子类 更多... | |
| virtual AttrType | value_type () const =0 |
| 表达式值的类型 更多... | |
| virtual std::string | name () const |
| 表达式的名字,比如是字段名称,或者用户在执行SQL语句时输入的内容 | |
| virtual void | set_name (std::string name) |
Private 属性 | |
| CompOp | comp_ |
| std::unique_ptr< Expression > | left_ |
| std::unique_ptr< Expression > | right_ |
比较表达式
compare the two tuple cells
| value | the result of comparison |
根据具体的tuple,来计算当前表达式的值。tuple有可能是一个具体某个表的行数据
实现了 Expression.
|
overridevirtual |
尝试在没有tuple的情况下获取当前表达式的值 在优化的时候,可能会使用到
重载 Expression .
|
inlineoverridevirtual |
表达式的类型 可以根据表达式类型来转换为具体的子类
实现了 Expression.
|
inlineoverridevirtual |