Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Wydajność MySQL USUNĄĆ czy AKTUALIZOWAĆ?

UPDATE jest zdecydowanie szybszy.

Kiedy UPDATE , rekordy tabeli są właśnie przepisywane nowymi danymi.

Kiedy DELETE , indeksy powinny zostać zaktualizowane (pamiętaj, że usuwasz cały wiersz, a nie tylko kolumny, które musisz zmodyfikować), a bloki danych mogą zostać przeniesione (jeśli naciśniesz PCTFREE limit)

A wszystko to musi być zrobione ponownie na INSERT .

Dlatego zawsze powinieneś używać

INSERT ... ON DUPLICATE KEY UPDATE

zamiast REPLACE .

Pierwszy z nich to UPDATE operacja w przypadku naruszenia klucza, przy czym to ostatnie to DELETE / INSERT .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Który jest najszybszy w PHP - MySQL czy MySQLi?

  2. Czy indeksy zostaną użyte w przypadku zapytania o podzbiór kolumn indeksu?

  3. Jaki jest odpowiednik SQL dla pandy 'transform'?

  4. SQL INSERT...SELECT z automatyczną inkrementacją DATETIME

  5. Zaktualizuj zapytanie za pomocą LEFT JOIN, zmiennej i autoinkrementacji za pomocą MySQL