Senior
Hogyan lehet egy egyediségi korlátozást hozzáadni a PostgreSQL-ben két oszlop kombinációjára, ahol az értékek külön-külön ismétlődhetnek, de a párok nem?
sobes.tech MI
Válasz az MI-től
A PostgreSQL-ben a két oszlop értékeinek kombinációjának egyediségét a UNIQUE korlátozás használatával biztosítják ezen oszloppáron. Ez garantálja, hogy minden értékpár egyedi lesz, még akkor is, ha az oszlopokban az egyes értékek ismétlődhetnek.
SQL lekérdezés példája:
ALTER TABLE az_asztalad_neve
ADD CONSTRAINT unique_col1_col2 UNIQUE (oszlop1, oszlop2);
Ha a tábla nulláról jön létre, azonnal meg lehet adni a korlátozást:
CREATE TABLE az_asztalad_neve (
id SERIAL PRIMARY KEY,
oszlop1 TÍPUS,
oszlop2 TÍPUS,
-- egyéb oszlopok
CONSTRAINT unique_col1_col2 UNIQUE (oszlop1, oszlop2)
);
Így az adatbázis nem fogja engedni, hogy olyan sorokat adjunk hozzá, amelyek ismétlődő értékek kombinációját tartalmazzák ezen két oszlopban.