Et unikt indeks i MySQL behøver ikke at være på en enkelt kolonne. Du kan tilføje et UNIKT indeks på flere kolonner ved blot at angive flere kolonner i din ALTER TABLE..ADD UNIQUE
erklæring:
ALTER TABLE myTable ADD UNIQUE (
mykey,
myfoo
);
Nu kan du bruge en almindelig INSERT INTO...ON DUPLICATE KEY
erklæring.
SQLFiddle DEMO (bemærk, at de flere gentagne værdier ikke tilføjes - alle andre er )
Bemærk :
Hvis en af dem er NULL, vil den ikke regnes som unikke. mykey
være 'bar' og myfoo
at være NULL kunne føjes til uendeligt, selvom de har de "samme" værdier (NULL er egentlig ikke en værdi).