MySQL 5.6.14 Source Code Document
|
Public Member Functions | |
QUICK_RANGE_SELECT (THD *thd, TABLE *table, uint index_arg, bool no_alloc, MEM_ROOT *parent_alloc, bool *create_error) | |
void | need_sorted_output () |
int | init () |
int | reset (void) |
int | get_next () |
void | range_end () |
int | get_next_prefix (uint prefix_length, uint group_key_parts, uchar *cur_prefix) |
bool | reverse_sorted () const |
bool | reverse_sort_possible () const |
bool | unique_key_range () |
int | init_ror_merged_scan (bool reuse_handler) |
void | save_last_pos () |
int | get_type () |
void | add_keys_and_lengths (String *key_names, String *used_lengths) |
void | add_info_string (String *str) |
void | dbug_dump (int indent, bool verbose) |
QUICK_SELECT_I * | make_reverse (uint used_key_parts_arg) |
void | set_handler (handler *file_arg) |
Public Member Functions inherited from QUICK_SELECT_I | |
virtual bool | clustered_pk_range () |
virtual bool | is_keys_used (const MY_BITMAP *fields) |
virtual bool | is_valid () |
Public Attributes | |
uint | mrr_flags |
MEM_ROOT | alloc |
Public Attributes inherited from QUICK_SELECT_I | |
ha_rows | records |
double | read_time |
TABLE * | head |
uint | index |
uint | max_used_key_length |
uint | used_key_parts |
uchar * | last_rowid |
uchar * | record |
Protected Member Functions | |
int | cmp_next (QUICK_RANGE *range) |
int | cmp_prev (QUICK_RANGE *range) |
bool | row_in_ranges () |
Protected Attributes | |
handler * | file |
bool | in_ror_merged_scan |
MY_BITMAP | column_bitmap |
DYNAMIC_ARRAY | ranges |
bool | free_file |
QUICK_RANGE ** | cur_range |
QUICK_RANGE * | last_range |
QUICK_RANGE_SEQ_CTX | qr_traversal_ctx |
uint | mrr_buf_size |
HANDLER_BUFFER * | mrr_buf_desc |
KEY_PART * | key_parts |
KEY_PART_INFO * | key_part_info |
bool | dont_free |
Friends | |
class | TRP_ROR_INTERSECT |
class | QUICK_SELECT_DESC |
class | QUICK_INDEX_MERGE_SELECT |
class | QUICK_ROR_INTERSECT_SELECT |
class | QUICK_GROUP_MIN_MAX_SELECT |
QUICK_RANGE_SELECT * | get_quick_select_for_ref (THD *thd, TABLE *table, struct st_table_ref *ref, ha_rows records) |
bool | get_quick_keys (PARAM *param, QUICK_RANGE_SELECT *quick, KEY_PART *key, SEL_ARG *key_tree, uchar *min_key, uint min_key_flag, uchar *max_key, uint max_key_flag) |
QUICK_RANGE_SELECT * | get_quick_select (PARAM *, uint idx, SEL_ARG *key_tree, uint mrr_flags, uint mrr_buf_size, MEM_ROOT *alloc) |
uint | quick_range_seq_next (range_seq_t rseq, KEY_MULTI_RANGE *range) |
range_seq_t | quick_range_seq_init (void *init_param, uint n_ranges, uint flags) |
Additional Inherited Members | |
Public Types inherited from QUICK_SELECT_I | |
enum | { QS_TYPE_RANGE = 0, QS_TYPE_INDEX_MERGE = 1, QS_TYPE_RANGE_DESC = 2, QS_TYPE_FULLTEXT = 3, QS_TYPE_ROR_INTERSECT = 4, QS_TYPE_ROR_UNION = 5, QS_TYPE_GROUP_MIN_MAX = 6 } |
Definition at line 402 of file opt_range.h.
|
virtual |
Create a compatible quick select with the result ordered in an opposite way
used_key_parts_arg | Number of used key parts |
NULL | in case of errors (OOM etc) |
pointer | to a newly created QUICK_SELECT_DESC if success |
Reimplemented from QUICK_SELECT_I.
Reimplemented in QUICK_SELECT_DESC.
Definition at line 10939 of file opt_range.cc.
|
inlinevirtual |
Whether the range access method is capable of returning records in reverse order.
Implements QUICK_SELECT_I.
Reimplemented in QUICK_SELECT_DESC.
Definition at line 472 of file opt_range.h.
|
inlinevirtual |
Whether the range access method returns records in reverse order.
Implements QUICK_SELECT_I.
Reimplemented in QUICK_SELECT_DESC.
Definition at line 471 of file opt_range.h.