fix: parsing conflicts
This commit is contained in:
parent
49e2ac8658
commit
cf759fba42
|
@ -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
|
||||
|
|
Loading…
Reference in New Issue