Уникальное ограничение на один столбец с исключением строки с такими же значениями в другом
Я хотел бы добавить уникальный ключ к столбцуvalue
но я должен игнорировать строки, которые имеют одинаковые значения в столбцахvalue
а такжеheader_id
, Например, рассмотрим эту таблицу:
id | header_id | value
1 | 1 | a
2 | 1 | a
3 | 2 | a
Таким образом, строки 1 и 2 указывают на один и тот же объект, и уникальный ключ должен принимать их, но строка 3 имеет другойheader_id
(указывая на другой объект) и, потому что он имеет тот жеvalue
как объект 1, он должен нарушать уникальное ограничение и выдавать ошибку.
Изменить 16.2: 1327:
Я использую базовую структуру, которая генерирует столбцы для обработки истории, поэтому я не могу нормализовать таблицу. В моем классе много столбцов, но для этого примера я рассматриваю толькоvalue
колонка.