Но у меня user_id может принимать null, и я бы хотел, что бы ограничение работало только для записей, у которых user_id NOT NULL. Это возможно? Спасибо за помощь
ALTER TABLE cms.memberships
ADD CONSTRAINT CK_MBR_TIME_RANGE
EXCLUDE USING gist
( user_id WITH =,
organization_id WITH =,
tstzrange (started_at, ended_at, '[]') WITH && -- this is the crucial
);
По идее оно так и должно работать по умолчанию. Вы проверяли это поведение?
ого. даже предположить не мог, что он NULL игнорит. Спасибо, сейчас проверю.
Обсуждают сегодня