From: | Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us> |
---|---|
To: | Ryan Delaney <ryan(dot)delaney(at)gmail(dot)com> |
Cc: | pgsql-general(at)postgresql(dot)org |
Subject: | Re: SELECT, GROUP BY, and aggregates |
Date: | 2015-02-13 18:13:02 |
Message-ID: | 28493.1423851182@sss.pgh.pa.us |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-general |
Ryan Delaney <ryan(dot)delaney(at)gmail(dot)com> writes:
> Why couldn't an RDBMS such as postgres interpret a SELECT that omits the GROUP
> BY as implicitly grouping by all the columns that aren't part of an aggregate?
Per SQL standard, a SELECT with aggregates but no GROUP BY is supposed to
give exactly one row. What you suggest would not do that.
In general we're not that much into assigning made-up semantics to cases
that are specifically disallowed by the spec. It's usually not too
obvious what the result "should be", so we run the risk that the SQL
committee might someday make a contrary decision. More, this would lose
error detection, and reduce interoperability with other DBMSes that follow
the spec more faithfully.
regards, tom lane
From | Date | Subject | |
---|---|---|---|
Next Message | Tom Lane | 2015-02-13 18:19:25 | Re: Contrib build fault for pgdg postgres 9.2 at debian 6 (squeeze) |
Previous Message | Sergey Burladyan | 2015-02-13 17:35:35 | Contrib build fault for pgdg postgres 9.2 at debian 6 (squeeze) |