MySQL 8.0.39
Source Code Documentation
|
Context object used by semijoin equality decorrelation code. More...
Public Member Functions | |
Semijoin_decorrelation (mem_root_deque< Item * > *sj_outer_exprs_arg, mem_root_deque< Item * > *sj_inner_exprs_arg, Mem_root_array< Item_func::Functype > *op_types_arg) | |
void | add_outer (Item *i) |
void | add_inner (Item *i) |
bool | decorrelate_only_eq () const |
bool | add_op_type (Item_func::Functype op_type) |
Item_func::Functype | op_type_at (int j) const |
Private Attributes | |
mem_root_deque< Item * > * | sj_outer_exprs |
mem_root_deque< Item * > * | sj_inner_exprs |
Mem_root_array< Item_func::Functype > * | op_types |
If nullptr: only a=b is decorrelated. More... | |
Context object used by semijoin equality decorrelation code.
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
inline |
|
private |
If nullptr: only a=b is decorrelated.
Otherwise, a OP b is decorrelated for OP in <>, >=, >, <=, <, and for each decorrelated SJ outer/inner pair, located at position N in sj_outer_exprs and sj_inner_exprs, we store, at the same position in op_types, the operator's type code representing "outer OP inner" (for example, LE_FUNC for outer<=inner as well as inner>=outer).
|
private |
|
private |