My Project
Public Member Functions | Public Attributes
Key_use Class Reference

#include <sql_select.h>

List of all members.

Public Member Functions

 Key_use (TABLE *table_arg, Item *val_arg, table_map used_tables_arg, uint key_arg, uint keypart_arg, uint optimize_arg, key_part_map keypart_map_arg, ha_rows ref_table_rows_arg, bool null_rejecting_arg, bool *cond_guard_arg, uint sj_pred_no_arg)

Public Attributes

TABLEtable
 table owning the index
Itemval
 other side of the equality, or value if no field
table_map used_tables
 tables used on other side of equality
uint key
 number of index
uint keypart
 used part of the index
uint optimize
 0, or KEY_OPTIMIZE_*
key_part_map keypart_map
 like keypart, but as a bitmap
ha_rows ref_table_rows
 Estimate of how many rows for a key value.
bool null_rejecting
bool * cond_guard
uint sj_pred_no

Detailed Description

Information about usage of an index to satisfy an equality condition.


Member Data Documentation

!NULL - This Key_use was created from an equality that was wrapped into an Item_func_trig_cond. This means the equality (and validity of this Key_use element) can be turned on and off. The on/off state is indicted by the pointed value: cond_guard == TRUE <=> equality condition is on cond_guard == FALSE <=> equality condition is off

NULL - Otherwise (the source equality can't be turned off)

Not used if the index is fulltext (such index cannot be used for equalities).

If true, the comparison this value was created from will not be satisfied if val has NULL 'value'. Not used if the index is fulltext (such index cannot be used for equalities).

0..63 <=> This was created from semi-join IN-equality # sj_pred_no. UINT_MAX Otherwise

Not used if the index is fulltext (such index cannot be used for semijoin).


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines