@@ -42,7 +42,7 @@ JOIN_TYPE.5: "INNER"i | "CROSS"i | /FULL\sOUTER/i | /LEFT\sOUTER/i | /RIGHT\sOU
4242 | "CASE"i (when_then)+ "ELSE"i expression_math "END"i -> case_expression
4343 | "CAST"i "(" expression_math "AS"i TYPENAME ")" -> as_type
4444 | "CAST"i "(" literal "AS"i TYPENAME ")" -> literal_cast
45- | aggregation "(" expression_math ")" -> sql_aggregation
45+ | AGGREGATION "(" expression_math ")" -> sql_aggregation
4646 | "RANK"i "(" ")" rank_form -> rank_expression
4747 | "DENSE_RANK"i "(" ")" rank_form -> dense_rank_expression
4848
@@ -54,9 +54,12 @@ order: expression_math ["ASC"i] -> order_asc
5454 | expression_math "DESC"i -> order_desc
5555
5656column_name: [NAME "."] NAME
57- ?expression_product: expression
58- | expression_product "*" expression -> expression_mul
59- | expression_product "/" expression -> expression_div
57+ ?expression_product: expression_parens
58+ | expression_product "*" expression_parens -> expression_mul
59+ | expression_product "/" expression_parens -> expression_div
60+
61+ ?expression_parens: expression
62+ | "(" expression_parens "*" expression ")"
6063
6164?expression: [NAME "."] (NAME | STAR) -> column_name
6265 | literal
@@ -79,7 +82,7 @@ TYPENAME: "object"i
7982 | "datetime64"i
8083 | "timestamp"i
8184 | "category"i
82- ?aggregation: NAME -> aggregation_name
85+ AGGREGATION.8: "sum"i | "avg"i | "min"i | "max"i
8386alias: NAME -> alias_string
8487_window_name: NAME
8588limit_count: integer -> limit_count
0 commit comments