SQLRU.net
Разработка приложений баз данных

Начало » Использование СУБД » PostgreSQL » Сделать 2 поля уникальными, для определённого значения одного из них.
Сделать 2 поля уникальными, для определённого значения одного из них. [сообщение #1874] Mon, 20 March 2023 15:00 Переход к предыдущему сообщению
polin11 в настоящее время не в онлайне  polin11
Сообщений: 6
Зарегистрирован: January 2023
Junior Member
Использую PGSQL. Есть таблица

CREATE TABLE forms (
    id serial PRIMARY KEY,
    account INT NOT NULL,
    author text,
    type INT NOT NULL
);
INSERT INTO  forms(account, author, type) VALUES 
(1, 'Иванов', 11),
(2, 'Сидоров', 11),
(3, 'Сергеев', 12)
Нужно сделать набор полей (account, type) уникальным только для type = 11.
Например обе записи нельзя было бы вставить, так как type = 11
(1, 'Иванов', 11),
(1, 'Сидоров', 11)
а например, записи можно было обе вставить, так как type != 11.
(1, 'Иванов', 12),
(1, 'Сидоров', 12)

Как это можно сделать в PGSQL?
 
Сообщение не прочитано
Сообщение не прочитано
Сообщение не прочитано
Предыдущая тема: Операции над массивами
Следующая тема: Логика работы SELECT FOR UPDATE
Переход к форуму:
  


Текущее время: Mon Apr 29 01:16:23 GMT+3 2024

Общее время, затраченное на создание страницы: 0.00861 секунд