提交 cf759fba 编写于 作者: X Xiaoyu Wang

fix: parsing conflicts

上级 49e2ac86
......@@ -952,10 +952,10 @@ union_query_expression(A) ::=
query_simple_or_subquery(B) UNION query_simple_or_subquery(C). { A = createSetOperator(pCxt, SET_OP_TYPE_UNION, B, C); }
query_simple_or_subquery(A) ::= query_simple(B). { A = B; }
query_simple_or_subquery(A) ::= subquery(B). { A = B; }
query_simple_or_subquery(A) ::= subquery(B). { A = releaseRawExprNode(pCxt, B); }
query_or_subquery(A) ::= query_expression(B). { A = B; }
query_or_subquery(A) ::= subquery(B). { A = B; }
query_or_subquery(A) ::= subquery(B). { A = releaseRawExprNode(pCxt, B); }
%type order_by_clause_opt { SNodeList* }
%destructor order_by_clause_opt { nodesDestroyList($$); }
......
......@@ -4369,9 +4369,7 @@ static YYACTIONTYPE yy_reduce(
case 470: /* query_simple ::= query_specification */ yytestcase(yyruleno==470);
case 471: /* query_simple ::= union_query_expression */ yytestcase(yyruleno==471);
case 474: /* query_simple_or_subquery ::= query_simple */ yytestcase(yyruleno==474);
case 475: /* query_simple_or_subquery ::= subquery */ yytestcase(yyruleno==475);
case 476: /* query_or_subquery ::= query_expression */ yytestcase(yyruleno==476);
case 477: /* query_or_subquery ::= subquery */ yytestcase(yyruleno==477);
{ yylhsminor.yy776 = yymsp[0].minor.yy776; }
yymsp[0].minor.yy776 = yylhsminor.yy776;
break;
......@@ -4432,6 +4430,8 @@ static YYACTIONTYPE yy_reduce(
case 315: /* signed_literal ::= literal_func */ yytestcase(yyruleno==315);
case 381: /* star_func_para ::= expression */ yytestcase(yyruleno==381);
case 436: /* select_item ::= common_expression */ yytestcase(yyruleno==436);
case 475: /* query_simple_or_subquery ::= subquery */ yytestcase(yyruleno==475);
case 477: /* query_or_subquery ::= subquery */ yytestcase(yyruleno==477);
case 489: /* search_condition ::= common_expression */ yytestcase(yyruleno==489);
{ yylhsminor.yy776 = releaseRawExprNode(pCxt, yymsp[0].minor.yy776); }
yymsp[0].minor.yy776 = yylhsminor.yy776;
......
......@@ -44,6 +44,8 @@ TEST_F(PlanSetOpTest, unionAllWithSubquery) {
run("SELECT ts FROM (SELECT ts FROM st1s1) UNION ALL SELECT ts FROM (SELECT ts FROM st1s2)");
// super table
run("SELECT ts FROM (SELECT ts FROM st1) UNION ALL SELECT ts FROM (SELECT ts FROM st1)");
run("(SELECT SERVER_STATUS()) UNION ALL (SELECT SERVER_STATUS())");
}
TEST_F(PlanSetOpTest, unionAllWithOrderBy) {
......
......@@ -116,7 +116,7 @@ sql_error (select c1 from union_tb0 limit 1 union all select c1 from union_tb1 l
sql_error (select c1 from union_tb0 limit 1 union all select c1 from union_tb1 limit 1) limit 1
# sql with parenthese
sql (((select c1 from union_tb0)))
sql (select c1 from union_tb0)
if $rows != 10000 then
return -1
endi
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册