| My Project
   
    | 
mysql_select and join optimization More...
#include "sql_select.h"#include "sql_optimizer.h"#include "sql_resolver.h"#include "sql_executor.h"#include "sql_planner.h"#include "debug_sync.h"#include "opt_trace.h"#include "sql_derived.h"#include "sql_test.h"#include "sql_base.h"#include "sql_parse.h"#include "my_bit.h"#include "lock.h"#include "abstract_query_plan.h"#include "opt_explain_format.h"#include <algorithm>| Classes | |
| class | COND_CMP | 
| struct | Key_field | 
| Used when finding key fields.  More... | |
| Defines | |
| #define | KEY_OPTIMIZE_EXISTS 1 | 
| #define | KEY_OPTIMIZE_REF_OR_NULL 2 | 
| Functions | |
| void | reset_nj_counters (List< TABLE_LIST > *join_list) | 
| Item_equal * | find_item_equal (COND_EQUAL *cond_equal, Field *field, bool *inherited_fl) | 
| Item_field * | get_best_field (Item_field *item_field, COND_EQUAL *cond_equal) | 
| Item * | build_equal_items (THD *thd, Item *cond, COND_EQUAL *inherited, bool do_inherit, List< TABLE_LIST > *join_list, COND_EQUAL **cond_equal_ref) | 
| Item * | substitute_for_best_equal_field (Item *cond, COND_EQUAL *cond_equal, void *table_join_idx) | 
| void | update_depend_map (JOIN *join) | 
| bool | uses_index_fields_only (Item *item, TABLE *tbl, uint keyno, bool other_tbls_ok) | 
| bool | is_indexed_agg_distinct (JOIN *join, List< Item_field > *out_args) | 
| Key_use_array * | create_keyuse_for_table (THD *thd, TABLE *table, uint keyparts, Item_field **fields, List< Item > outer_exprs) | 
| Item * | make_cond_for_table (Item *cond, table_map tables, table_map used_table, bool exclude_expensive_cond) | 
| Item * | optimize_cond (THD *thd, Item *conds, COND_EQUAL **cond_equal, List< TABLE_LIST > *join_list, bool build_equalities, Item::cond_result *cond_value) | 
| Item * | remove_eq_conds (THD *thd, Item *cond, Item::cond_result *cond_value) | 
mysql_select and join optimization
 1.7.6.1
 1.7.6.1