Re: SQL:2011 application time

From: Vik Fearing <vik(at)postgresfriends(dot)org>
To: Peter Eisentraut <peter(at)eisentraut(dot)org>, Paul Jungwirth <pj(at)illuminatedcomputing(dot)com>
Cc: Corey Huinker <corey(dot)huinker(at)gmail(dot)com>, PostgreSQL Hackers <pgsql-hackers(at)lists(dot)postgresql(dot)org>
Subject: Re: SQL:2011 application time
Date: 2023-09-01 10:50:08
Message-ID: 7d44dade-ff31-5eef-80ac-78ed838066f6@postgresfriends.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On 9/1/23 11:30, Peter Eisentraut wrote:
> 1) If I write UNIQUE (a, b, c WITHOUT OVERLAPS), does the WITHOUT
> OVERLAPS clause attach to the last column, or to the whole column list?
> In the SQL standard, you can only have one period and it has to be
> listed last, so this question does not arise.  But here we are building
> a more general facility to then build the SQL facility on top of.  So I
> think it doesn't make sense that the range column must be last or that
> there can only be one.  Also, your implementation requires at least one
> non-overlaps column, which also seems like a confusing restriction.
>
> I think the WITHOUT OVERLAPS clause should be per-column, so that
> something like UNIQUE (a WITHOUT OVERLAPS, b, c WITHOUT OVERLAPS) would
> be possible.  Then the WITHOUT OVERLAPS clause would directly correspond
> to the choice between equality or overlaps operator per column.
>
> An alternative interpretation would be that WITHOUT OVERLAPS applies to
> the whole column list, and we would take it to mean, for any range
> column, use the overlaps operator, for any non-range column, use the
> equals operator.  But I think this would be confusing and would prevent
> the case of using the equality operator for some ranges and the overlaps
> operator for some other ranges in the same key.

I prefer the first option. That is: WITHOUT OVERLAPS applies only to
the column or expression it is attached to, and need not be last in line.
--
Vik Fearing

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Jim Jones 2023-09-01 11:16:31 Re: Show inline comments from pg_hba lines in the pg_hba_file_rules view
Previous Message Michael Paquier 2023-09-01 10:44:24 Re: Show inline comments from pg_hba lines in the pg_hba_file_rules view