PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

restrição exclusiva postgresql para qualquer número inteiro de duas colunas (ou da matriz)


Você pode usar a restrição de exclusão na tabela junto com o intarray para realizar uma pesquisa rápida de matrizes sobrepostas:
CREATE EXTENSION intarray;
CREATE TABLE test (
    a int[],
    EXCLUDE USING gist (a gist__int_ops WITH &&)
);

INSERT INTO test values('{1,2}');

INSERT INTO test values('{2,3}');
>> ERROR:  conflicting key value violates exclusion constraint "test_a_excl"
>> DETAIL:  Key (a)=({2,3}) conflicts with existing key (a)=({1,2}).