DBZ-6794 Dbz crashed on parsing MySQL DDL statement (SELECT 1 + @sum:=1 AS ss;)
This commit is contained in:
parent
b3098de0fd
commit
bb579983ca
@ -2698,8 +2698,8 @@ predicate
|
|||||||
| predicate SOUNDS LIKE predicate #soundsLikePredicate
|
| predicate SOUNDS LIKE predicate #soundsLikePredicate
|
||||||
| predicate NOT? LIKE predicate (ESCAPE STRING_LITERAL)? #likePredicate
|
| predicate NOT? LIKE predicate (ESCAPE STRING_LITERAL)? #likePredicate
|
||||||
| predicate NOT? regex=(REGEXP | RLIKE) predicate #regexpPredicate
|
| predicate NOT? regex=(REGEXP | RLIKE) predicate #regexpPredicate
|
||||||
| (LOCAL_ID VAR_ASSIGN)? expressionAtom #expressionAtomPredicate
|
|
||||||
| predicate MEMBER OF '(' predicate ')' #jsonMemberOfPredicate
|
| predicate MEMBER OF '(' predicate ')' #jsonMemberOfPredicate
|
||||||
|
| expressionAtom #expressionAtomPredicate
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
@ -2712,6 +2712,7 @@ expressionAtom
|
|||||||
| mysqlVariable #mysqlVariableExpressionAtom
|
| mysqlVariable #mysqlVariableExpressionAtom
|
||||||
| unaryOperator expressionAtom #unaryExpressionAtom
|
| unaryOperator expressionAtom #unaryExpressionAtom
|
||||||
| BINARY expressionAtom #binaryExpressionAtom
|
| BINARY expressionAtom #binaryExpressionAtom
|
||||||
|
| LOCAL_ID VAR_ASSIGN expressionAtom #variableAssignExpressionAtom
|
||||||
| '(' expression (',' expression)* ')' #nestedExpressionAtom
|
| '(' expression (',' expression)* ')' #nestedExpressionAtom
|
||||||
| ROW '(' expression (',' expression)+ ')' #nestedRowExpressionAtom
|
| ROW '(' expression (',' expression)+ ')' #nestedRowExpressionAtom
|
||||||
| EXISTS '(' selectStatement ')' #existsExpressionAtom
|
| EXISTS '(' selectStatement ')' #existsExpressionAtom
|
||||||
|
@ -307,4 +307,17 @@ cte2 AS (
|
|||||||
SELECT * FROM table2 WHERE col2 = 'value'
|
SELECT * FROM table2 WHERE col2 = 'value'
|
||||||
)
|
)
|
||||||
SELECT cte1.col1, cte2.col2 FROM cte1 JOIN cte2 ON cte1.id = cte2.id;
|
SELECT cte1.col1, cte2.col2 FROM cte1 JOIN cte2 ON cte1.id = cte2.id;
|
||||||
#end
|
#end
|
||||||
|
SELECT !(1 + @sum:=1) AS ss;
|
||||||
|
SELECT (@sum:=1 + 1) AS ss;
|
||||||
|
SELECT 1 + @sum:=1 AS ss;
|
||||||
|
SELECT 100 >> @sum:=1 AS ss;
|
||||||
|
SELECT @sum:=1 < 100 AS ss;
|
||||||
|
SELECT 100 and @sum:=1 AS ss;
|
||||||
|
SELECT
|
||||||
|
@sum := @sum + column_name AS running_sum
|
||||||
|
FROM
|
||||||
|
your_table,
|
||||||
|
(SELECT @sum := 0) AS init
|
||||||
|
ORDER BY
|
||||||
|
some_order_column;
|
Loading…
Reference in New Issue
Block a user