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