У меня есть такая таблица:
CREATE TABLE schema.mytable
(
id serial NOT NULL,
number integer NOT NULL,
state boolean NOT NULL,
);
Мне нужно создать уникальный набор «номер», но столбец состояния должен быть истинным; если столбец состояния имеет значение false, числа могут повторяться, вот пример того, что мне нужно, чтобы быть действительным:
id number state
1 123 true
2 124 true
3 125 true
4 123 false
5 129 false
, как вы можете видеть, число 123 повторяется, но в одном случае состояние ложь, а другая правда; это неверно:
id number state
1 123 true
2 124 true
3 125 true
4 123 true (*incorrect)
5 129 false
Также возможно, что 123 повторяется два или более раз с ложным состоянием; Как мне этого добиться?