Re: Proposal: QUALIFY clause

From: Nico Williams <nico(at)cryptonector(dot)com>
To: Vik Fearing <vik(at)postgresfriends(dot)org>
Cc: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, Matheus Alcantara <matheusssilv97(at)gmail(dot)com>, Isaac Morland <isaac(dot)morland(at)gmail(dot)com>, Mike Artz <michaeleartz(at)gmail(dot)com>, Pg Hackers <pgsql-hackers(at)postgresql(dot)org>, Peter Eisentraut <peter(at)eisentraut(dot)org>
Subject: Re: Proposal: QUALIFY clause
Date: 2025-07-21 20:34:56
Message-ID: aH6kcNoIb0MKaoDM@ubby
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Mon, Jul 21, 2025 at 10:26:51PM +0200, Vik Fearing wrote:
> On 21/07/2025 19:30, Tom Lane wrote:
> > * I'm not exactly convinced that the committee would standardize
> > it just like this. For one thing, QUALIFY is not even the right
> > part of speech: it's a verb, and thus more fit to be a primary
> > statement keyword. What you need here is an adverb (I think ...
> > been a long time since high school English, but my dictionary
> > says WHERE is an adverb). Maybe they'd be persuaded to do what
> > the existing implementations did, but I wouldn't be at all surprised
> > if they choose a different keyword.

Or a gerund, which is what HAVING is. Or a conjugated verb or something
like QUALIFIED BY, though really "qualif*" seems just wrong. This is
just another name for a WHERE that, like HAVING is paired with some
other language feature (like GROUP BY) and applies to that clause. I
don't have a better keyword(s) to offer, just sadness.

> I am pretty sure that the keyword will be QUALIFY. There are just too many
> existing implementations for the standard to go against them all.  (Also,
> another rdbms just implemented it that way in their upcoming product.)

Bummer.

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2025-07-21 20:41:03 Re: Non-text mode for pg_dumpall
Previous Message Robert Treat 2025-07-21 20:29:56 Re: [PATCH] Proposal to Enable/Disable Index using ALTER INDEX