Mysql
 sql >> Base de données >  >> RDS >> Mysql

Qu'est-ce qui est le plus rapide :plusieurs INSERT simples ou un INSERT à plusieurs lignes ?

https://dev.mysql.com/doc/refman /8.0/fr/insert-optimization.html

Le temps requis pour insérer une ligne est déterminé par les facteurs suivants, où les nombres indiquent des proportions approximatives :

  • Connexion :(3)
  • Envoi de la requête au serveur :(2)
  • Analyse de la requête :(2)
  • Insertion d'une ligne :(1 × taille de la ligne)
  • Insertion d'index :(1 × nombre d'index)
  • Fermeture :(1)

À partir de là, il devrait être évident que l'envoi d'une grande déclaration vous fera économiser une surcharge de 7 par déclaration d'insertion, ce qui, en lisant davantage le texte, indique également :

Si vous insérez plusieurs lignes à partir du même client en même temps, utilisez des instructions INSERT avec plusieurs listes VALUES pour insérer plusieurs lignes à la fois. C'est considérablement plus rapide (plusieurs fois plus rapide dans certains cas) que d'utiliser des instructions INSERT séparées sur une seule ligne.