Joshua Yanovski <pythonesque@gmail.com> writes:
> Great, thanks. Yeah, I was thinking about that too--I am not sure if
> there are any other examples of a time where Postgres deliberately
> duplicates an argument like that (maybe there could be a check for it
> to be a constexpr or something? But that information isn't available
> at this point in the analysis process).
Yeah, BETWEEN is like that. I'd like to fix it sometime, but it's
kind of problematic because of the risk of losing index optimizations
(which only understand x >= y and x <= z, not a hypothetical combined
node).
I think there are no other examples (CASE used to be one, but we fixed
that long ago), but haven't trawled the grammar to be sure.
regards, tom lane