Уникальное ограничение на один столбец с исключением строки с такими же значениями в другом

Я хотел бы добавить уникальный ключ к столбцу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 колонка.

Ответы на вопрос(3)

Ваш ответ на вопрос