Rewriting my frame support types patch to allow any expression in
PRECEDING/FOLLOWING clause, I found the syntax below in PG conflicts:
frame_extent: frame_bound { ... }
| BETWEEN frame_bound AND frame_bound { ... }
;
frame_bound: UNBOUNDED PRECEDING { ... }
| UNBOUNDED FOLLOWING { ... }
| CURRENT_P ROW { ... }
| a_expr PRECEDING { ... }
| a_expr FOLLOWING { .... }
;
because a_expr (and of course b_expr) contains BETWEEN as
type_func_name_keyword, which means the starting BETWEEN in
frame_extend is completely ambiguous. When I tried to move BETWEEN to
reserved_keyword, it was solved as expected.
In my poor mind there's no way to avoid this situation as long as you
keep BETWEEN as type_func_name_keyword, but could anyone have a
solution for this?
Regards,
--
Hitoshi Harada
--
Sent via pgsql-hackers mailing list ([email protected])
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-hackers