sql >> Database teknologi >  >> RDS >> PostgreSQL

Postgresql håndhæver unik to-vejs kombination af kolonner

En variant af Neils løsning, som ikke behøver en udvidelse, er:

create table friendz (
  from_id int,
  to_id int
);

create unique index ifriendz on friendz(greatest(from_id,to_id), least(from_id,to_id));

Neils løsning lader dig dog bruge et vilkårligt antal kolonner.

Vi er begge afhængige af at bruge udtryk til at bygge indekset, som er dokumenteret https://www.postgresql.org/docs/current/indexes-expressional.html



  1. 3 måder at få jobtrinene for et SQL Server Agent Job (T-SQL)

  2. SQL SELECT INTO-sætning

  3. Sådan sikkerhedskopieres og gendanner du en PostgreSQL-database via DBeaver

  4. 5 måder at implementere case-usensitiv søgning i SQLite med fuld Unicode-understøttelse