Re: Proposal: QUALIFY clause

From: "Matheus Alcantara" <matheusssilv97(at)gmail(dot)com>
To: "Vik Fearing" <vik(at)postgresfriends(dot)org>, "Pg Hackers" <pgsql-hackers(at)postgresql(dot)org>
Cc: "Peter Eisentraut" <peter(at)eisentraut(dot)org>
Subject: Re: Proposal: QUALIFY clause
Date: 2025-07-25 12:55:01
Message-ID: DBL5H5N4UD3K.3GLPTCFIN82CI@gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon Jul 21, 2025 at 7:11 PM -03, Vik Fearing wrote:
> That is my preferred grammar, thank you.  I have not looked at the C
> code by this can be obtained with a syntax transformation. To wit:
>
>
> SELECT a, b, c
> FROM tab
> QUALIFY wf() OVER () = ?
>
>
> can be rewritten as:
>
>
> SELECT a, b, c
> FROM (
>     SELECT a, b, c, wf() OVER () = ? AS qc
>     FROM tab
> ) AS q
> WHERE qc
>
>
> and then let the optimizer take over.  The standard does this kind of
> thing all over the place; I don't know what the postgres project's
> position on doing things like this are.
>

With this transformation users will see a Subquery plan node even if
it's not present on the original query, is that expected or it can be
confusing to users?

--
Matheus Alcantara

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2025-07-25 12:55:02 Re: Retail DDL
Previous Message Xuneng Zhou 2025-07-25 12:23:21 Re: Proposal: Limitations of palloc inside checkpointer