PostgreSQL
 sql >> база данни >  >> RDS >> PostgreSQL

postgresql уникално ограничение за всяко цяло число от две колони (или от масив)

Можете да използвате ограничение за изключване на таблицата заедно с вътрешния масив, за да извършите бързо търсене на припокриващи се масиви:

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}).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Postgres изгледи не се разпознават от rspec

  2. PostgreSQL управление и автоматизация с ClusterControl

  3. ГРУПИРАНЕ ПО или БРОЙ Подобни стойности на полето - UNPIVOT?

  4. Агрегираните функции не са разрешени в рекурсивна заявка. Има ли алтернативен начин за написване на тази заявка?

  5. сериен в postgres се увеличава, въпреки че добавих на конфликт не прави нищо