Peter Eisentraut <peter@eisentraut.org> writes:
> The initially proposed patch appears to have the right idea overall.
> But it does not handle more complex cases like
> SELECT a, SUM(b)+a FROM t1 GROUP BY ALL;
> (For explanation: GROUP BY ALL expands to all select list entries that
> do not contain aggregates. So the above would expand to
> SELECT a, SUM(b)+a FROM t1 GROUP BY a;
> which should then be rejected based on the existing rules.)
I thought I understood this definition, up till your last
comment. What's invalid about that expanded query?
regression=# create table t1 (a int, b int);
CREATE TABLE
regression=# SELECT a, SUM(b)+a FROM t1 GROUP BY a;
a | ?column?
---+----------
(0 rows)
regards, tom lane