taking a stab at agg(foo ORDER BY bar)
The spec defines array_agg(foo ORDER BY ...) which we don't implement
yet; obviously, we have no reason not to define this for any
aggregate, rather than just array_agg.
This doesn't seem to present any problems as far as the syntax goes,
and the actual execution is just a small matter of coding, but I'm not
seeing the best way to handle it in parse-analysis. All the existing
infrastructure for ORDER BY seems to be dependent on targetlists, which
obviously we don't have in the context of an aggregate call.
Ideas?
--
Andrew (irc:RhodiumToad)
Andrew Gierth <andrew@tao11.riddles.org.uk> writes:
This doesn't seem to present any problems as far as the syntax goes,
and the actual execution is just a small matter of coding, but I'm not
seeing the best way to handle it in parse-analysis. All the existing
infrastructure for ORDER BY seems to be dependent on targetlists, which
obviously we don't have in the context of an aggregate call.
Well, if you don't want to refactor that code, it wouldn't be difficult
to make a one-entry tlist containing the aggregate argument, and then
throw it away again after you'd extracted what you need.
regards, tom lane