Was ist ein Deckungsindex?Das Erstellen eines Indexes, der alle in der Abfrage verwendeten Felder enthält, wird als überdeckender Index bezeichnet. Mit einem überdeckenden Index muss MySQL den Index nur verwenden, um die für die Abfrage erforderlichen Daten zu finden und zurückzugeben, ohne nach der Verarbeitung der Daten mithilfe des Indexes eine Tabellenrückgabeoperation ausführen zu müssen. Durch das Abdecken von Indizes kann die Abfragearbeit auf einmal abgeschlossen werden, wodurch die IO effektiv reduziert und die Abfrageeffizienz verbessert wird. AnwendungsbeispieleAbfrageanweisung: Wählen Sie Spalte2, Spalte3 aus Testtabelle, wobei Spalte1 = xxx ist. Bestellen Sie nach Spalte2; Erstellen Sie einen einspaltigen Index: ALTER TABLE `test_table` ADD INDEX `idx_col1`(`col1`) USING BTREE; Analyseabfrage: EXPLAIN SELECT SQL_NO_CACHE col2, col3 FROM test_table WHERE col1 = xxx ORDER BY col2; Ergebnis: Nachdem ein Index für col1 erstellt wurde, ist der Typ „ref“ und der Index idx_col1 wird verwendet. Ändern Sie den Index und erstellen Sie einen gemeinsamen Index basierend auf der Abfrageanweisung: ALTER TABLE `test_table` DROP INDEX `idx_col1`; ALTER TABLE `test_table` ADD INDEX `idx_col1_col2_col3`(`col1`, `col2`, `col3`) USING BTREE; Analyseabfrage: EXPLAIN SELECT SQL_NO_CACHE col2, col3 FROM test_table WHERE col1 = xxx ORDER BY col2; Ergebnis: Nachdem der gemeinsame Index erstellt wurde, ist der Typ „ref“, der Index „idx_col1_col2_col3“ wird verwendet und „Extra“ ist „Using-Index“, was darauf hinweist, dass ein überdeckender Index verwendet wird. Der Unterschied zwischen MySQL-Abdeckungsindex und gemeinsamem Index Ein überdeckender Index bedeutet, dass die abgefragten Spalten direkt über den Index extrahiert werden können, also beispielsweise nur die Spalten der Primärschlüsselliste abgefragt werden! Oder fragen Sie alle Spalten des gemeinsamen Indexes oder einige Spalten von links beginnend ab (auf die Reihenfolge achten)! Ein gemeinsamer Index ruft nicht notwendigerweise alle Daten aus dem Index ab; dies hängt von der abgefragten Spalte ab. Beispielsweise ist es unwahrscheinlich, dass die Methode „select * from table where ××××××;“ ein überdeckender Index ist. Wenn also die von Ihnen abgefragten Spalten den gemeinsamen Index verwenden können und die von Ihnen abgefragten Spalten über den gemeinsamen Index abgerufen werden können, z. B. wenn Sie nur die Spalte abfragen, in der sich der gemeinsame Index befindet, oder einen Teil der Spalten, beginnend von links, entspricht dies einem überdeckenden Index. Damit die Abfrage den überdeckenden Index verwenden kann, werden normalerweise mehrere abzufragende Datenspalten als gemeinsamer Index festgelegt. ZusammenfassenDies ist das Ende dieses Artikels über die Verwendung von MySQL-Überdeckungsindizes. Weitere relevante MySQL-Überdeckungsindexinhalte finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: Detaillierter Prozess zum Kompilieren und Installieren von Storm auf dem Kylin V10-Server
>>: So zeigen Sie den Rahmen an, wenn td leer ist
Verwenden Sie Javascript, um ein Message Board-Be...
Inhaltsverzeichnis Überblick Erstellen Sie eine T...
Inhaltsverzeichnis webpack5 Offizieller Start Bau...
Durch die Verwendung von Dockerfile können Benutz...
Um die Unterstreichung eines Hyperlinks zu entfern...
Vorwort: Mit der kontinuierlichen Entwicklung der...
Code <div Klasse="Test"> <div&...
Zuvor hatte ich WordPress selbst erstellt, aber d...
1. Konvertieren Sie das JSON-Objekt in eine JSON-...
HTML ist die Abkürzung für Hypertext Markup Langua...
Vorwort Dieser Artikel stellt die fünfte Frage vo...
Die Datenbankdaten der Projekttestumgebung sind v...
Inhaltsverzeichnis Der Begriff der Affären Der St...
mysqladmin ist ein offizielles MySQL-Clientprogra...
Verwenden Sie Metadaten, um eine zeitgesteuerte A...