diff options
Diffstat (limited to 'sql/sql_lex.h')
-rw-r--r-- | sql/sql_lex.h | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/sql/sql_lex.h b/sql/sql_lex.h index fae7eb8e7ff..0c42ce9c6a9 100644 --- a/sql/sql_lex.h +++ b/sql/sql_lex.h @@ -92,7 +92,12 @@ typedef struct st_lex_master_info enum sub_select_type { - UNSPECIFIED_TYPE, UNION_TYPE, INTERSECT_TYPE, EXCEPT_TYPE, NOT_A_SELECT + UNSPECIFIED_TYPE, UNION_TYPE, INTERSECT_TYPE, EXCEPT_TYPE, OLAP_TYPE, NOT_A_SELECT +}; + +enum olap_type +{ + NON_EXISTING_ONE, CUBE_TYPE, ROLLUP_TYPE }; /* The state of the lex parsing for selects */ @@ -100,6 +105,7 @@ enum sub_select_type typedef struct st_select_lex { enum sub_select_type linkage; + enum olap_type olap; char *db,*db1,*table1,*db2,*table2; /* For outer join using .. */ Item *where,*having; ha_rows select_limit,offset_limit; @@ -123,7 +129,7 @@ typedef struct st_lex { uint yylineno,yytoklen; /* Simulate lex */ LEX_YYSTYPE yylval; - SELECT_LEX select_lex, *select; + SELECT_LEX select_lex, *select, *last_selects; uchar *ptr,*tok_start,*tok_end,*end_of_query; char *length,*dec,*change,*name; char *backup_dir; /* For RESTORE/BACKUP */ @@ -169,7 +175,7 @@ typedef struct st_lex enum enum_var_type option_type; uint grant,grant_tot_col,which_columns, union_option; thr_lock_type lock_option; - bool drop_primary,drop_if_exists,local_file; + bool drop_primary,drop_if_exists,local_file. olap; bool in_comment,ignore_space,verbose,simple_alter; uint slave_thd_opt; } LEX; |