diff options
author | unknown <bell@sanja.is.com.ua> | 2002-12-26 01:28:59 +0200 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2002-12-26 01:28:59 +0200 |
commit | 1dfa625f7b2a0767ce458c47122093a8c2ecf664 (patch) | |
tree | 6a73d0cc2b8728ab821e54448c158fa784365acb /sql/item.h | |
parent | da4d8e1b62edc5bc6f31d70279a619325ae69442 (diff) | |
download | mariadb-git-1dfa625f7b2a0767ce458c47122093a8c2ecf664.tar.gz |
support of subselect without FROM reducing (SCRUM)
fixed bug of calling setup_fields without correct lex->current_select pointer in mysql_derived
more correct creation of reference in Item_field::fix_field
mysql-test/r/subselect.result:
new explain with subselect reduced
mysql-test/t/subselect.test:
new explain with subselect reduced
sql/item.cc:
support of subselect without FROM reducing
more correct creation of reference in Item_field::fix_field
sql/item.h:
support of subselect without FROM reducing
sql/item_cmpfunc.cc:
support of subselect without FROM reducing
sql/item_cmpfunc.h:
support of subselect without FROM reducing
sql/item_func.cc:
support of subselect without FROM reducing
sql/item_func.h:
support of subselect without FROM reducing
sql/item_row.cc:
support of subselect without FROM reducing
sql/item_row.h:
support of subselect without FROM reducing
sql/item_strfunc.h:
fixed layout
support of subselect without FROM reducing
sql/item_subselect.cc:
support of subselect without FROM reducing
sql/item_subselect.h:
support of subselect without FROM reducing
sql/mysql_priv.h:
reference in Item_field::fix_field related changes
sql/sql_base.cc:
reference in Item_field::fix_field related changes
sql/sql_derived.cc:
fixed bug of calling setup_fields without correct lex->current_select pointer
Diffstat (limited to 'sql/item.h')
-rw-r--r-- | sql/item.h | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/sql/item.h b/sql/item.h index 4e3c5f597ab..508c737e7b9 100644 --- a/sql/item.h +++ b/sql/item.h @@ -96,6 +96,7 @@ public: CHARSET_INFO *thd_charset() const; CHARSET_INFO *charset() const { return str_value.charset(); }; void set_charset(CHARSET_INFO *cs) { str_value.set_charset(cs); } + virtual void set_outer_resolving() {} // Row emulation virtual uint cols() { return 1; } @@ -117,12 +118,14 @@ public: const char *table_name; const char *field_name; st_select_lex *depended_from; + bool outer_resolving; /* used for items from reduced subselect */ Item_ident(const char *db_name_par,const char *table_name_par, const char *field_name_par) - :db_name(db_name_par),table_name(table_name_par), - field_name(field_name_par), depended_from(0) + :db_name(db_name_par), table_name(table_name_par), + field_name(field_name_par), depended_from(0), outer_resolving(0) { name = (char*) field_name_par; } const char *full_name() const; + void set_outer_resolving() { outer_resolving= 1; } }; |