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

MySQL Come inserire un nuovo record o aggiornare un campo a seconda che esista?

Dai un'occhiata a INSERT... ON DUPLICATE KEY AGGIORNAMENTO .

Dovrebbe assomigliare a questo:

INSERT INTO mytable (rating, num_rates, uniqueCol)
VALUES ($theRating, 1, $uniqueCol)
ON DUPLICATE KEY UPDATE
  rating=((rating*num_rates)+$theRating)/num_rates,
  num_rates=num_rates+1;

Assicurati di avere un UNIQUE index o PRIMARY KEY sul tuo uniqueCol .