Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Warum und wo INDEXe verwenden - Vor- und Nachteile

Nun, Sie können wahrscheinlich Bücher über Indizes füllen, aber kurz hier ein paar Dinge, an die Sie denken sollten, wenn Sie einen Index erstellen:

Während es (meistens) eine Auswahl beschleunigt, verlangsamt es Einfügungen, Aktualisierungen und Löschungen, da die Datenbank-Engine nicht nur die Daten schreiben muss, sondern auch den Index. Ein Index benötigt Speicherplatz auf der Festplatte (und viel wichtiger) im Arbeitsspeicher. Ein Index, der nicht im RAM gehalten werden kann, ist ziemlich nutzlos. Ein Index auf einer Spalte mit nur wenigen unterschiedlichen Werten beschleunigt die Auswahl nicht, da er nicht viele Zeilen aussortieren kann (z. B. eine Spalte "Geschlecht", die normalerweise hat nur zwei verschiedene Werte - männlich, weiblich).

Wenn Sie zum Beispiel MySQL verwenden, können Sie überprüfen, ob die Engine einen Index verwendet, indem Sie "explain" vor dem select hinzufügen - für Ihr obiges Beispiel EXPLAIN SELECT TestField FROM Example WHERE username=XXXX