From ed8be699fea316ecd9ee49c0739c54c0e51c73da Mon Sep 17 00:00:00 2001 From: unknown Date: Thu, 17 Jul 2003 19:39:31 +0300 Subject: new optimisation for ref_null (SCRUM) (WL#818) mysql-test/r/subselect.result: results of new optimisation mysql-test/t/subselect.test: results of new optimisation sql/item_cmpfunc.h: function type sql/item_func.h: function type sql/item_subselect.cc: new optimisation for ref_or_null sql/item_subselect.h: new optimisation for ref_or_null sql/sql_select.cc: new optimisation for ref_or_null sql/sql_select.h: item_subselect.cc need safe_index_read --- sql/item_subselect.h | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) (limited to 'sql/item_subselect.h') diff --git a/sql/item_subselect.h b/sql/item_subselect.h index 5749220629f..e2738102ebd 100644 --- a/sql/item_subselect.h +++ b/sql/item_subselect.h @@ -228,6 +228,7 @@ public: friend class Item_asterisk_remover; friend class Item_ref_null_helper; friend class Item_is_not_null_test; + friend class subselect_indexin_engine; }; /* ALL/ANY/SOME subselect */ @@ -337,10 +338,13 @@ public: class subselect_indexin_engine: public subselect_simplein_engine { + bool check_null; public: subselect_indexin_engine(THD *thd, st_join_table *tab_arg, - Item_subselect *subs, Item *where) - :subselect_simplein_engine(thd, tab_arg, subs, where) + Item_subselect *subs, Item *where, + bool chk_null) + :subselect_simplein_engine(thd, tab_arg, subs, where), + check_null(chk_null) {} int exec(); }; -- cgit v1.2.1