summaryrefslogtreecommitdiff
path: root/sql/item_subselect.h
diff options
context:
space:
mode:
authorbell@laptop.sanja.is.com.ua <>2003-10-07 16:22:48 +0300
committerbell@laptop.sanja.is.com.ua <>2003-10-07 16:22:48 +0300
commitefae22f61785325c3cff43c28dbefc52d5cd5abb (patch)
tree2b25cac2a29311fee2e74d727d07ee234b83ea71 /sql/item_subselect.h
parent09c139ac379d966a857a2fe39c7831505a58f367 (diff)
parent4b491cb78830d898a761e67f9cb9e1e109fb07ab (diff)
downloadmariadb-git-efae22f61785325c3cff43c28dbefc52d5cd5abb.tar.gz
merge
Diffstat (limited to 'sql/item_subselect.h')
-rw-r--r--sql/item_subselect.h11
1 files changed, 8 insertions, 3 deletions
diff --git a/sql/item_subselect.h b/sql/item_subselect.h
index 9de6a75711a..143ec6bf330 100644
--- a/sql/item_subselect.h
+++ b/sql/item_subselect.h
@@ -243,6 +243,7 @@ public:
friend class subselect_indexsubquery_engine;
};
+
/* ALL/ANY/SOME subselect */
class Item_allany_subselect :public Item_in_subselect
{
@@ -258,6 +259,7 @@ public:
trans_res select_transformer(JOIN *join);
};
+
class subselect_engine: public Sql_alloc
{
protected:
@@ -292,6 +294,7 @@ public:
bool may_be_null() { return maybe_null; };
};
+
class subselect_single_select_engine: public subselect_engine
{
my_bool prepared; /* simple subselect is prepared */
@@ -312,6 +315,7 @@ public:
void exclude();
};
+
class subselect_union_engine: public subselect_engine
{
st_select_lex_unit *unit; /* corresponding unit structure */
@@ -328,6 +332,7 @@ public:
void exclude();
};
+
struct st_join_table;
class subselect_uniquesubquery_engine: public subselect_engine
{
@@ -343,17 +348,17 @@ public:
{
set_thd(thd);
}
-
+ ~subselect_uniquesubquery_engine();
int prepare();
void fix_length_and_dec(Item_cache** row);
int exec();
uint cols() { return 1; }
bool dependent() { return 1; }
bool uncacheable() { return 1; }
- void exclude();
- static int end_exec(TABLE *table);
+ void exclude();
};
+
class subselect_indexsubquery_engine: public subselect_uniquesubquery_engine
{
bool check_null;