Search Postgresql Archives

Re: Group By and wildcards...

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sat, Feb 19, 2005 at 12:40:40 -0500,
  Tom Lane <tgl@xxxxxxxxxxxxx> wrote:
> Bruno Wolff III <bruno@xxxxxxxx> writes:
> >   Jon Lapham <lapham@xxxxxxxxx> wrote:
> >> When using queries with aggregate functions, is there any way to not 
> >> have to have to explicitly write all the columns names after the GROUP 
> >> BY ?  I would like to use a wildcard "*".
> 
> > Don't those tables have primary keys? Grouping by the primay key of each
> > table will produce the same result set as grouping by all of the columns.
> 
> Unfortunately, PG will still make him GROUP BY everything he wants to
> use as a non-aggregated output column.  This behavior is per SQL92
> spec.  SQL99 added some verbiage to the effect that you only need to
> GROUP BY columns that the rest are functionally dependent on (this
> covers primary keys and some other cases); but we haven't got round
> to implementing that extension.

I forgot about that. However, if maintainance is the most important
consideration, then it is possible to use only the primary keys
to do the grouping and then join that result back to the original
tables to pick up the other columns. It should be possible to do
this without explicitly naming all of the columns. It will be slower
and more complicated, but this might be an acceptable trade off.

---------------------------(end of broadcast)---------------------------
TIP 1: subscribe and unsubscribe commands go to majordomo@xxxxxxxxxxxxxx

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Postgresql Jobs]     [Postgresql Admin]     [Postgresql Performance]     [Linux Clusters]     [PHP Home]     [PHP on Windows]     [Kernel Newbies]     [PHP Classes]     [PHP Books]     [PHP Databases]     [Postgresql & PHP]     [Yosemite]
  Powered by Linux