diff --git a/sql/sql_lex.cc b/sql/sql_lex.cc index ac5ec1ba1e4..b013a4219f2 100644 --- a/sql/sql_lex.cc +++ b/sql/sql_lex.cc @@ -1761,6 +1761,7 @@ void st_select_lex::init_query() ref_pointer_array_size= 0; select_n_where_fields= 0; select_n_having_items= 0; + n_sum_items= 0; n_child_sum_items= 0; subquery_in_having= explicit_limit= 0; is_item_list_lookup= 0; diff --git a/sql/sql_yacc.yy b/sql/sql_yacc.yy index 3a76dbb310c..dc4aadea33a 100644 --- a/sql/sql_yacc.yy +++ b/sql/sql_yacc.yy @@ -10959,7 +10959,9 @@ show: bzero((char*) &lex->create_info,sizeof(lex->create_info)); } show_param - {} + { + Select->parsing_place= NO_MATTER; + } ; show_param: @@ -11309,7 +11311,10 @@ describe: if (prepare_schema_table(YYTHD, lex, $2, SCH_COLUMNS)) MYSQL_YYABORT; } - opt_describe_column {} + opt_describe_column + { + Select->parsing_place= NO_MATTER; + } | describe_command opt_extended_describe { Lex->describe|= DESCRIBE_NORMAL; } select