15 lines
371 B
SQL
15 lines
371 B
SQL
DO $excl$
|
|
BEGIN
|
|
IF NOT EXISTS (
|
|
SELECT 1 FROM pg_constraint WHERE conname = 'excl_booking_room_dates'
|
|
) THEN
|
|
ALTER TABLE public.bookings
|
|
ADD CONSTRAINT excl_booking_room_dates
|
|
EXCLUDE USING gist (
|
|
room_id WITH =,
|
|
daterange(check_in, check_out) WITH &&
|
|
) WHERE (status NOT IN ('cancelled', 'no_show'));
|
|
END IF;
|
|
END;
|
|
$excl$;
|