Re: 7.3 "group by" issue

From: Peter Eisentraut <peter_e(at)gmx(dot)net>
To: Josh Berkus <josh(at)agliodbs(dot)com>
Cc: Dan Langille <dan(at)langille(dot)org>, Chad Thompson <chad(at)weblinkservices(dot)com>, <pgsql-sql(at)postgresql(dot)org>
Subject: Re: 7.3 "group by" issue
Date: 2003-02-23 02:24:13
Message-ID: Pine.LNX.4.44.0302230245070.2308-100000@peter.localdomain
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-sql

Josh Berkus writes:

> SELECT a.c1, count(a.c2)
> FROM a JOIN b
> WHERE b.c5 = x
> GROUP BY c1
>
> In a case like this, a.c1 == c1 without possibility of ambiguity.

Consider JOIN to be a black-box function, then you'd be writing something
like

SELECT a.c1, count(a.c2)
FROM func(a, b) AS r (c1, c2, c3, c4, c5)
WHERE b.c5 = x
GROUP BY c1; -- <== refers to r.c1

Clearly in this case you cannot claim that in general a.c1 == r.c1.

If the func() is an inner join, then the claim is true, but if it's an
outer join it's not. The scoping rules for inner and outer joins are the
same, and that might be considered a good thing.

--
Peter Eisentraut peter_e(at)gmx(dot)net

In response to

Responses

Browse pgsql-sql by date

  From Date Subject
Next Message Peter Eisentraut 2003-02-23 02:24:30 Re: sql question after upgrade
Previous Message Neil Conway 2003-02-23 01:42:04 Re: sql question after upgrade