
Zitat von
waldi
Hallo PG'ler
ich habe eine Tabelle und möchte sowas nicht zulassen:
Das ist OK:
Also im Prinzip darf das was in Spalte A und B zusammen vorkommt nie doppelt vorkommen. Ich hoffe ich habe das so richtig erklären können.
Vielen Dank für die eventuellen Antworten.
Du suchst einen unique Index über beide Spalten:
Code:
test=# create table doppelt (a int, b int);
CREATE TABLE
Time: 375.800 ms
test=*# create unique index u_doppelt on doppelt(a,b);
CREATE INDEX
Time: 90.274 ms
test=*# insert into doppelt values (1,1);
INSERT 0 1
Time: 1.938 ms
test=*# insert into doppelt values (1,2);
INSERT 0 1
Time: 3.525 ms
test=*# insert into doppelt values (1,2);
ERROR: duplicate key violates unique constraint "u_doppelt"
test=*#
Andreas
Lesezeichen