MySQL 8.4.2
Source Code Documentation
|
Select statement node. More...
#include <row0sel.h>
Public Attributes | |
que_common_t | common |
node type: QUE_NODE_SELECT More... | |
enum sel_node_state | state |
node state More... | |
que_node_t * | select_list |
select list More... | |
sym_node_t * | into_list |
variables list or NULL More... | |
sym_node_t * | table_list |
table list More... | |
bool | asc |
true if the rows should be fetched in an ascending order More... | |
bool | set_x_locks |
true if the cursor is for update or delete, which means that a row x-lock should be placed on the cursor row More... | |
ulint | row_lock_mode |
LOCK_X or LOCK_S. More... | |
ulint | n_tables |
number of tables More... | |
ulint | fetch_table |
number of the next table to access in the join More... | |
plan_t * | plans |
array of n_tables many plan nodes containing the search plan and the search data structures More... | |
que_node_t * | search_cond |
search condition More... | |
ReadView * | read_view |
if the query is a non-locking consistent read, its read view is placed here, otherwise NULL More... | |
bool | consistent_read |
true if the select is a consistent, non-locking read More... | |
order_node_t * | order_by |
order by column definition, or NULL More... | |
bool | is_aggregate |
true if the select list consists of aggregate functions More... | |
bool | aggregate_already_fetched |
true if the aggregate row has already been fetched for the current cursor More... | |
bool | can_get_updated |
this is true if the select is in a single-table explicit cursor which can get updated within the stored procedure, or in a searched update or delete; NOTE that to determine of an explicit cursor if it can get updated, the parser checks from a stored procedure if it contains positioned update or delete statements More... | |
sym_node_t * | explicit_cursor |
not NULL if an explicit cursor More... | |
sym_node_list_t | copy_variables |
variables whose values we have to copy when an explicit cursor is opened, so that they do not change between fetches More... | |
Select statement node.
bool sel_node_t::aggregate_already_fetched |
true if the aggregate row has already been fetched for the current cursor
bool sel_node_t::asc |
true if the rows should be fetched in an ascending order
bool sel_node_t::can_get_updated |
this is true if the select is in a single-table explicit cursor which can get updated within the stored procedure, or in a searched update or delete; NOTE that to determine of an explicit cursor if it can get updated, the parser checks from a stored procedure if it contains positioned update or delete statements
que_common_t sel_node_t::common |
node type: QUE_NODE_SELECT
bool sel_node_t::consistent_read |
true if the select is a consistent, non-locking read
sym_node_list_t sel_node_t::copy_variables |
variables whose values we have to copy when an explicit cursor is opened, so that they do not change between fetches
sym_node_t* sel_node_t::explicit_cursor |
not NULL if an explicit cursor
ulint sel_node_t::fetch_table |
number of the next table to access in the join
sym_node_t* sel_node_t::into_list |
variables list or NULL
bool sel_node_t::is_aggregate |
true if the select list consists of aggregate functions
ulint sel_node_t::n_tables |
number of tables
order_node_t* sel_node_t::order_by |
order by column definition, or NULL
plan_t* sel_node_t::plans |
array of n_tables many plan nodes containing the search plan and the search data structures
ReadView* sel_node_t::read_view |
if the query is a non-locking consistent read, its read view is placed here, otherwise NULL
ulint sel_node_t::row_lock_mode |
LOCK_X or LOCK_S.
que_node_t* sel_node_t::search_cond |
search condition
que_node_t* sel_node_t::select_list |
select list
bool sel_node_t::set_x_locks |
true if the cursor is for update or delete, which means that a row x-lock should be placed on the cursor row
enum sel_node_state sel_node_t::state |
node state
sym_node_t* sel_node_t::table_list |
table list