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

Prestazioni MySQL DELETE o UPDATE?

UPDATE è di gran lunga molto più veloce.

Quando UPDATE , i record della tabella vengono appena riscritti con nuovi dati.

Quando DELETE , gli indici dovrebbero essere aggiornati (ricorda, elimini l'intera riga, non solo le colonne che devi modificare) e i blocchi di dati potrebbero essere spostati (se premi PCTFREE limite)

E tutto questo deve essere ripetuto su INSERT .

Ecco perché dovresti sempre usare

INSERT ... ON DUPLICATE KEY UPDATE

invece di REPLACE .

Il primo è un UPDATE operazione in caso di violazione della chiave, mentre quest'ultima è DELETE / INSERT .