summaryrefslogtreecommitdiff
path: root/sql/sql_select.h
diff options
context:
space:
mode:
authorigor@rurik.mysql.com <>2004-10-19 16:07:10 -0700
committerigor@rurik.mysql.com <>2004-10-19 16:07:10 -0700
commita03e5ad8e4982e034c960f0a8d558c3b3f2c134a (patch)
treec4a004a87cda30de2a6a2e8f1edd255d89e8a247 /sql/sql_select.h
parent0b7f26d74da1ba31bd44c18b325af2ce96823c5b (diff)
parent4c8e3917186ad416effa97bce402b9bb55a9f7b5 (diff)
downloadmariadb-git-a03e5ad8e4982e034c960f0a8d558c3b3f2c134a.tar.gz
Merge for post-merge fixes for Item_equal patch.
Diffstat (limited to 'sql/sql_select.h')
-rw-r--r--sql/sql_select.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/sql/sql_select.h b/sql/sql_select.h
index 95b3b5e493e..d489e911363 100644
--- a/sql/sql_select.h
+++ b/sql/sql_select.h
@@ -91,7 +91,8 @@ typedef struct st_join_table {
SQL_SELECT *select;
COND *select_cond;
QUICK_SELECT_I *quick;
- Item *on_expr; /* associated on expression */
+ Item **on_expr_ref; /* pointer to the associated on expression */
+ COND_EQUAL *cond_equal; /* multiple equalities for the on expression */
st_join_table *first_inner; /* first inner table for including outerjoin */
bool found; /* true after all matches or null complement */
bool not_null_compl;/* true before null complement is added */
@@ -222,6 +223,7 @@ class JOIN :public Sql_alloc
Item *conds_history; // store WHERE for explain
TABLE_LIST *tables_list; //hold 'tables' parameter of mysql_select
List<TABLE_LIST> *join_list; // list of joined tables in reverse order
+ COND_EQUAL *cond_equal;
SQL_SELECT *select; //created in optimisation phase
JOIN_TAB *return_tab; //used only for outer joins
Item **ref_pointer_array; //used pointer reference for this select
@@ -284,6 +286,7 @@ class JOIN :public Sql_alloc
ref_pointer_array_size= 0;
zero_result_cause= 0;
optimized= 0;
+ cond_equal= 0;
fields_list= fields_arg;
bzero((char*) &keyuse,sizeof(keyuse));