Grundlegende Bedienung des MySQL-Index

Allgemeine Indextypen

  • Der Primärschlüsselindex PROMARY KEY ist auch der einzige Index, der keine doppelten Daten zulässt.
  • EINZIGARTIGER INDEX eindeutiger Index, doppelte Daten sind nicht zulässig.
  • Der normale INDEX-Index ermöglicht doppelte Daten.
  • Kombinierter Index, Index zu mehreren Feldern hinzufügen, die oben genannten können als kombinierter Index festgelegt werden. Der kombinierte Index muss das Präfix-Matching-Prinzip ganz links erfüllen.

Hier gibt es einen kontroversen Punkt: Wenn es einen kombinierten Index (a, b) gibt, wird Spalte b in der SQL-Abfrage separat verwendet. Erklären wird verwendet, um die SQL zu erklären. Sie werden feststellen, dass das zusätzliche Feld mithilfe des Index angezeigt wird, und wir sagen oft die separate Abfrage b den Index nicht nehmen ist nicht die gleiche,
da die Permutationen und Kombinationen von SQL-ähnlichem Index auf zwei Felder in der Praxis order by a,bist die Art von b auf der Grundlage eines geordneten, b deshalb , um effizient zu finden , die Prämisse des meisten links Präfixes erfüllt werden, Wenn Sie nur b verwenden, wird der Verwendungsindex angezeigt. Da b derzeit jedoch nicht in Ordnung ist, kann es nicht effizient durchsucht werden, und der Gesamtindex wird nicht verwendet.

Bei der Indexoptimierung ist auch ein allgemeiner Wissenspunkt beteiligt: ​​Zurück zur Tabelle
Da der Nicht-Primärschlüsselindex Ihre Daten und den Primärschlüsselwert des Indexfelds speichern soll, speichert der Primärschlüsselindex die gesamte Datenzeile. Wenn die Daten in der Abfrage Felder enthalten, die nicht dem Index entsprechen, werden die Daten erneut anhand des im Index gespeicherten Primärschlüssels überprüft. Dieser Vorgang wird zur Tabelle zurückgerufen.
Wenn t (a [PROMARY KEY], b, c, d) Inkrementieren die Indexzeit wir CREATE INDEX b_c ON t(b,c)
eine Abfrageoperation durchführen , SELECT b,c,d FROM t where b = xxxda nur die Kombination aus dem Index und den Wert der bc Primärschlüsselfeld, ist es notwendig , den Wert von der Tabelle [Die Prüfung erneut die Primärschlüsseltabelle zurückzukehren Holen Sie sich d】.
Führen Sie die Abfrage Betrieb , SELECT b,c,a FROM t where b = xxxweil die Kombination aus dem Indexwert bc Feld und nur den Primärschlüssel, sobald alle erforderlichen Wert zu erhalten , das den Betrieb wieder an den Tisch zu vermeiden.

  • Daher können wir versuchen, die Rückkehr zur Tabelle während des Abfrageprozesses zu vermeiden, um die SQL-Leistung zu verbessern

Das Folgende ist eine Zusammenstellung häufig verwendeter Indexoperationen

  • Index erhöhen: CREATE INDEX b_c ON table_name(b,c) oderALTER TABLE table_name ADD 索引类型 (unique,primary key,index)[索引名](字段名)

  • Löschen Sie den Index: DROP INDEX index_name on table_name oder ALTER TABLE table_name DROP INDEX index_nameoderALTER TABLE table_name DROP PROMARY KEY

  • Index anzeigen:SHOW INDEX FROM table_name

  • Analyseindex: Fügen Sie das Schlüsselwort EXPLAIN vor SQL hinzu

Ich denke du magst

Origin www.cnblogs.com/threecha/p/12741874.html
Empfohlen
Rangfolge