Re: Using non-grouping-keys at HAVING clause - Mailing list pgsql-hackers

From Vik Fearing
Subject Re: Using non-grouping-keys at HAVING clause
Date
Msg-id 181d12be-302e-c05b-7320-3e700ae9a554@postgresfriends.org
Whole thread Raw
In response to Using non-grouping-keys at HAVING clause  (Kohei KaiGai <kaigai@heterodb.com>)
Responses Re: Using non-grouping-keys at HAVING clause
List pgsql-hackers
On 9/8/23 09:42, Kohei KaiGai wrote:
> Hello,
> 
> I got a trouble report here:
> https://github.com/heterodb/pg-strom/issues/636
> 
> It says that PG-Strom raised an error when the HAVING clause used
> non-grouping-keys,
> even though the vanilla PostgreSQL successfully processed the query.
> 
> SELECT MAX(c0) FROM t0 GROUP BY t0.c1 HAVING t0.c0<MIN(t0.c0);
> 
> However, I'm not certain what is the right behavior here.
> The "c0" column does not appear in the GROUP BY clause, thus we cannot
> know its individual
> values after the group-by stage, right?

Wrong.  c1 is the primary key and so c0 is functionally dependent on it. 
  Grouping by the PK is equivalent to grouping by all of the columns in 
the table.
-- 
Vik Fearing




pgsql-hackers by date:

Previous
From: Jelte Fennema
Date:
Subject: Re: Support prepared statement invalidation when result types change
Next
From: Amit Kapila
Date:
Subject: Re: [PoC] pg_upgrade: allow to upgrade publisher node