OVERLAPS constraint using TIME columns

From: Gio - <gio-force(dot)2(dot)1(at)hotmail(dot)com>
To: "pgsql-novice(at)postgresql(dot)org" <pgsql-novice(at)postgresql(dot)org>
Subject: OVERLAPS constraint using TIME columns
Date: 2018-02-21 21:21:27
Message-ID: VI1PR05MB158277FA71F6EAD5071154D2FDCE0@VI1PR05MB1582.eurprd05.prod.outlook.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-novice

Hi all,

I have a table for weekly time slots with columns day, from, to.

I would like to add a constraint so that overlapping time slots cannot be added to the db.

The OVERLAPS operator works as I need to, eg
SELECT (TIME ‘5:00', TIME '10:00') OVERLAPS (TIME '22:59', TIME '23:10');

But I can’t use it inside a constraint (ERROR: syntax error near “,”)

ALTER TABLE slots
ADD CONSTRAINT same_day_slots_overlap
EXCLUDE USING GIST
(
day WITH =,
(from, to) WITH OVERLAPS
);

Same error happens if I use the && operator.

I only need time information in my columns so I can either model them as TIME or INTEGER (as minutes from the start of the day). How can I add
such a constraint with these columns?

Thank you very much,
George

Responses

Browse pgsql-novice by date

  From Date Subject
Next Message Laurenz Albe 2018-02-22 08:58:44 Re: OVERLAPS constraint using TIME columns
Previous Message Keith 2018-02-21 20:54:47 Re: First time installing