Public Types | |
| enum | enum_engine_type { ABSTRACT_ENGINE, SINGLE_SELECT_ENGINE, UNION_ENGINE, UNIQUESUBQUERY_ENGINE, INDEXSUBQUERY_ENGINE, HASH_SJ_ENGINE } |
Public Member Functions | |
| subselect_single_select_engine (Select_Lex *select, select_result_interceptor *result, Item_subselect *item) | |
| void | cleanup () |
| int | prepare () |
| void | fix_length_and_dec (Item_cache **row) |
| int | exec () |
| uint32_t | cols () |
| bool | uncacheable () |
| bool | uncacheable (uint32_t bit_pos) |
| void | exclude () |
| table_map | upper_select_const_tables () |
| virtual void | print (String *str) |
| bool | change_result (Item_subselect *si, select_result_interceptor *result) |
| bool | no_tables () |
| bool | may_be_null () |
| bool | is_executed () const |
| bool | no_rows () |
| virtual enum_engine_type | engine_type () |
| bool | save_join_if_explain () |
| void | set_session (Session *session_arg) |
| Session * | get_session () |
| enum Item_result | type () |
| enum_field_types | field_type () |
Static Public Member Functions | |
| static table_map | calc_const_tables (TableList *) |
| static void * | operator new (size_t size) |
| static void * | operator new (size_t size, Root *mem_root) |
| static void * | operator new[] (size_t size) |
| static void * | operator new[] (size_t size, Root *mem_root) |
| static void | operator delete (void *, size_t) |
| static void | operator delete (void *, Root *) |
| static void | operator delete[] (void *, Root *) |
| static void | operator delete[] (void *, size_t) |
Protected Member Functions | |
| void | set_row (List< Item > &item_list, Item_cache **row) |
Protected Attributes | |
| select_result_interceptor * | result |
| Session * | session |
| Item_subselect * | item |
| enum Item_result | res_type |
| enum_field_types | res_field_type |
| bool | maybe_null |
Private Attributes | |
| bool | prepared |
| bool | optimized |
| bool | executed |
| Select_Lex * | select_lex |
| Join * | join |
Friends | |
| class | subselect_hash_sj_engine |
| class | Item_in_subselect |
Definition at line 486 of file subselect.h.
| bool drizzled::subselect_single_select_engine::change_result | ( | Item_subselect * | si, |
| select_result_interceptor * | res | ||
| ) | [virtual] |
change select_result object of engine.
| si | new subselect Item |
| res | new select_result object |
| false | OK |
| true | error |
Implements drizzled::subselect_engine.
Definition at line 2870 of file subselect.cc.
| bool drizzled::subselect_single_select_engine::no_tables | ( | ) | [virtual] |
Report about presence of tables in subquery.
| true | there are not tables used in subquery |
| false | there are some tables in subquery |
Implements drizzled::subselect_engine.
Definition at line 2929 of file subselect.cc.
| int drizzled::subselect_single_select_engine::prepare | ( | ) | [virtual] |
Create and prepare the JOIN object that represents the query execution plan for the subquery.
This method is called from Item_subselect::fix_fields. For prepared statements it is called both during the PREPARE and EXECUTE phases in the following ways:
| 0 | if success |
| 1 | if error |
Implements drizzled::subselect_engine.
Definition at line 2037 of file subselect.cc.