summaryrefslogtreecommitdiff
path: root/sql/sql_yacc.yy
diff options
context:
space:
mode:
authorunknown <Sinisa@sinisa.nasamreza.org>2001-12-29 20:56:50 +0200
committerunknown <Sinisa@sinisa.nasamreza.org>2001-12-29 20:56:50 +0200
commit19f4deb16b89ac6f771fdde1db5a2a106d8b33f7 (patch)
tree1bb77473ce3db09986b5ee160c69ca652a9744d7 /sql/sql_yacc.yy
parent049ded305c5838d69876ba3bef50241f4ae2558b (diff)
downloadmariadb-git-19f4deb16b89ac6f771fdde1db5a2a106d8b33f7.tar.gz
DATE,TIME and DATETIME SQL typecasts
Diffstat (limited to 'sql/sql_yacc.yy')
-rw-r--r--sql/sql_yacc.yy6
1 files changed, 6 insertions, 0 deletions
diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy
index f7de9ce0b54..ed76982b12a 100644
--- a/sql/sql_yacc.yy
+++ b/sql/sql_yacc.yy
@@ -486,6 +486,9 @@ bool my_yyoverflow(short **a, YYSTYPE **b,int *yystacksize);
%left NEG '~'
%right NOT
%right BINARY
+%right DATE_SYM
+%right TIME_SYM
+%right DATETIME
%type <lex_str>
IDENT TEXT_STRING REAL_NUM FLOAT_NUM NUM LONG_NUM HEX_NUM LEX_HOSTNAME
@@ -1601,6 +1604,9 @@ simple_expr:
{ Select->ftfunc_list.push_back((Item_func_match *)
($$=new Item_func_match_bool(*$2,$5))); }
| BINARY expr %prec NEG { $$= new Item_func_binary($2); }
+ | DATE_SYM expr { $$= new Item_date_typecast($2); }
+ | TIME_SYM expr { $$= new Item_time_typecast($2); }
+ | DATETIME expr { $$= new Item_datetime_typecast($2); }
| CASE_SYM opt_expr WHEN_SYM when_list opt_else END
{ $$= new Item_func_case(* $4, $2, $5 ) }
| FUNC_ARG0 '(' ')'