diff options
author | unknown <bell@sanja.is.com.ua> | 2003-05-14 21:51:33 +0300 |
---|---|---|
committer | unknown <bell@sanja.is.com.ua> | 2003-05-14 21:51:33 +0300 |
commit | a32b868c3b930b512ffd840c2708e0ee894507b1 (patch) | |
tree | dd5bbcb7c0561f00a367fdeab1296efdea9012ca /sql/sql_lex.cc | |
parent | 79c53934bec3cb6504f8cf8b1c6d8d465b12a149 (diff) | |
download | mariadb-git-a32b868c3b930b512ffd840c2708e0ee894507b1.tar.gz |
subselect transformation moved in after-fix_field place
removed "of is null" if it is possible
(this cset should be SCRUM related, but not approved as scrum task yet)
mysql-test/r/subselect.result:
new subselect test result (new place of error detecting & and more subselect reducing)
sql/item.cc:
layout fix
sql/item.h:
unneed ';'
fixed print pethod
sql/item_cmpfunc.cc:
new method to support transformation after fix_fields
sql/item_cmpfunc.h:
new method to support transformation after fix_fields
fixed Item printing
sql/item_subselect.cc:
new transformation
sql/item_subselect.h:
new transformation
sql/sql_derived.cc:
'table' & 'table_list' now is not union
sql/sql_lex.cc:
'table' & 'table_list' now is not union to support reinit only shared tables (but all)
sql/sql_lex.h:
mark fake st_select_lex
sql/sql_olap.cc:
fixed table assignment
TODO added
sql/sql_select.cc:
'table' & 'table_list' now is not union
transforming subselect
sql/sql_union.cc:
prepare make on fix_fields
sql/sql_yacc.yy:
fixed layout
sql/table.h:
'table & 'table_list' now is different fields
Diffstat (limited to 'sql/sql_lex.cc')
-rw-r--r-- | sql/sql_lex.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc index 9bc4dfc74e7..329ea6eb281 100644 --- a/sql/sql_lex.cc +++ b/sql/sql_lex.cc @@ -1302,11 +1302,13 @@ bool st_select_lex_unit::create_total_list_n_last_return(THD *thd, st_lex *lex, return 1; } *new_table_list= cursor; + cursor->table_list= aux; //to be able mark this table as shared new_table_list= &cursor->next; *new_table_list= 0; // end result list } else - aux->shared= 1; // Mark that it's used twice + // Mark that it's used twice + cursor->table_list->shared= aux->shared= 1; aux->table_list= cursor; } } @@ -1403,6 +1405,7 @@ ulong st_select_lex::get_table_join_options() } st_select_lex::st_select_lex(struct st_lex *lex) + :fake_select(0) { select_number= ++lex->thd->select_number; init_query(); |