|
| Query_term_except (MEM_ROOT *mem_root) |
| Constructor. More...
|
|
Query_term_type | term_type () const override |
| Get the node tree type. More...
|
|
const char * | operator_string () const override |
| Get the node type description. More...
|
|
void | debugPrint (int level, std::ostringstream &buf) const override |
| Print the tree rooted at this node to buf. More...
|
|
Query_block * | query_block () const override |
| Getter for m_block, q.v. More...
|
|
bool | set_block (Query_block *b) |
| Setter for m_block, q.v. More...
|
|
void | label_children () override |
| Set the correct value of Query_term::m_sibling_idx recursively for set operations. More...
|
|
size_t | child_count () const override |
| Get the number of children this node has. More...
|
|
bool | open_result_tables (THD *thd, int level) override |
| Open tmp tables for the tree of set operation query results, by recursing. More...
|
|
void | cleanup (bool full) override |
| Reset resources used. More...
|
|
void | destroy_tree () override |
| Destroy the query term tree structure. More...
|
|
bool | has_mixed_distinct_operators () |
| Check if this set operation has a mix of DISTINCT and ALL. More...
|
|
bool | is_unary () const |
| Check if this term is a unary set operation. More...
|
|
Mem_root_array< MaterializePathParameters::QueryBlock > | setup_materialize_set_op (THD *thd, TABLE *dst_table, bool union_distinct_only, bool calc_found_rows) |
| Sets up each(*) query block in this query expression for materialization into the given table by making a materialization parameter for each block (*) modulo union_distinct_only. More...
|
|
Query_term * | pushdown_limit_order_by (Query_term_set_op *parent=nullptr) |
| Called after contextualization to simplify query, c.f. More...
|
|
bool | validate_structure (const Query_term *parent, int depth=0) const |
| Return true if structure is too deep, i.e. More...
|
|
std::pair< bool, bool > | redundant_order_by (Query_block *block, int level) |
| Determine if we have a redundant ORDER BY in block. More...
|
|
virtual | ~Query_term ()=default |
| Node destructor. More...
|
|
Query_term_set_op * | parent () const |
| Getter for m_parent, q.v. More...
|
|
void | set_sibling_idx (uint idx) |
| Setter for m_sibling_idx , q.v. More...
|
|
uint | sibling_idx () |
| Getter for m_sibling_idx , q.v. More...
|
|
void | printPointers (std::ostringstream &buf) const |
| Print the pointer of this node and its parent to buf. More...
|
|
void | set_setop_query_result (Query_result *rs) |
| Setter for m_setop_query_result, q.v. More...
|
|
Query_result * | setop_query_result () |
| Getter for m_setop_query_result, q.v. More...
|
|
Query_result_union * | setop_query_result_union () |
| Getter for m_setop_query_result, q.v. Use only if we can down cast. More...
|
|
void | cleanup_query_result (bool full) |
| Cleanup m_setop_query_result, q.v. More...
|
|
void | set_owning_operand () |
| Setter for m_owning_operand, q.v. More...
|
|
bool | owning_operand () |
| Getter for m_owning_operand, q.v. More...
|
|
void | set_result_table (Table_ref *tl) |
| Setter for m_result_table, q.v. More...
|
|
Table_ref & | result_table () |
| Getter for m_result_table, q.v. More...
|
|
void | set_fields (mem_root_deque< Item * > *fields) |
|
mem_root_deque< Item * > * | fields () |
|