Mysql
 sql >> Database >  >> RDS >> Mysql

Il modo più veloce per aggiornare una tabella MySQL se esiste una riga altrimenti inserisci. Più di 2 chiavi non univoche

usa semplicemente INSERT...ON DUPLICATE KEY UPDATE

INSERT INTO reports_adv (day, uid, siteid, cid, visits) 
VALUES ('$day', '$uid', '$sid', '$cid', 1)
ON DUPLICATE KEY UPDATE visits=visits+1;

ma prima di ogni altra cosa, dovresti definire un UNIQUE vincolo sulle colonne.

ALTER TABLE reports_adv  ADD CONSTRAINT tb_uq UNIQUE (day, uid, siteid, cid)