Dieser Artikel veranschaulicht anhand von Beispielen den Einfluss von MySQL-Indizes auf die Sortierung. Teilen Sie uns die Einzelheiten zu Ihrer Information mit: Indizes können nicht nur die Abfragegeschwindigkeit verbessern, sondern auch die Sortiergeschwindigkeit erhöhen. Wenn die Anweisung nach order by den Index verwendet, wird die Sortiergeschwindigkeit verbessert. prüfen 1. Erstellen Sie eine Testtabelle: t15-Tabelle CREATE TABLE `t15` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `cat_id` int(10) unsigned NICHT NULL STANDARD '0', `Preis` Dezimalzahl (10,2) NICHT NULL STANDARD '0,00', `name` char(5) NICHT NULL STANDARD '', Primärschlüssel (`id`), ) ENGINE=InnoDB STANDARD-CHARSET=utf8 2. 10.000 Datenzeilen einfügen <?php $db = "Test"; $conn = mysql_connect('localhost','root','1234'); mysql_query('verwenden ' . $db , $conn); mysql_query('Namen auf utf8 festlegen', $conn); für($i=1;$i<=10000;$i++) { $cat_id = rand(1,10); $preis = rand(1,50000); $name = substr(str_shuffle('abcdefghjkmnpqrstuvwxyzABCDEFGHJKLMNPQRSTUVWXYZ234565789'),0,5); $sql = sprintf("in t15-Werte einfügen (%d, %d, %f, '%s')", $i, $cat_id, $price, $name); : mysql_query($sql, $conn); } 3. Websites von Einkaufszentren sortieren Preise normalerweise nach einer bestimmten Kategorie. Lassen Sie uns dies simulieren und dieselbe SQL-Anweisung ausführen. Wählen Sie Name, Kat.-ID, Preis aus t15, wobei Kat.-ID = 1, sortiert nach Preis; (1) Fügen Sie nicht zuerst einen Index hinzu Aus der Abfrageanalyse können wir ersehen, dass in Extra (2) Fügen Sie der Spalte (cat_id, price) einen Index hinzu Tabelle ändern t15, Index hinzufügen cp(cat_id,price); In der Abfrageanalyse hier verwendet Extra nicht Using filesort, was bedeutet, dass das SQL, das den Index hinzufügt und dann die Abfrage ausführt, keine externe Sortierung verwendet, sondern die Indexsortierung verwendet. Da der Index selbst sortiert ist, ist kein zusätzliches „order by“ erforderlich. 4. Beobachtungsabfragezeit Die Anweisung mit Query_ID 1 wird ohne Hinzufügen eines Index ausgeführt, und die Anweisung mit Query_ID 3 wird nach Hinzufügen eines Index ausgeführt. Die Ausführungszeit der einen beträgt 0,013 Sekunden, die Ausführungszeit der anderen 0,005 Sekunden. Mit dem Index ist es definitiv schneller. Mal sehen, wo es schneller ist. Detaillierte zeitaufwändige Grafik der SQL-Anweisung mit Query_ID 1: Detailliertes Zeitverbrauchsdiagramm für die SQL-Anweisung mit Query_ID 3: Offensichtlich dauert Schlussfolgerung: Der Index hat einen gewissen Einfluss auf die Sortiergeschwindigkeit. Daher ist es bei der tatsächlichen Entwicklung erforderlich, den Index basierend auf der tatsächlichen Situation zu formulieren und dem Index so viele Sortierfelder wie möglich hinzuzufügen. Leser, die an weiteren MySQL-bezogenen Inhalten interessiert sind, können sich die folgenden Themen auf dieser Site ansehen: „Zusammenfassung der Kenntnisse im Bereich MySQL-Indexoperationen“, „Zusammenfassung der Kenntnisse im Bereich MySQL-Allgemeinfunktionen“, „Zusammenfassung der Kenntnisse im Bereich MySQL-Protokolloperationen“, „Zusammenfassung der Kenntnisse im Bereich MySQL-Transaktionsoperationen“, „Zusammenfassung der Kenntnisse im Bereich MySQL-gespeicherte Prozeduren“ und „Zusammenfassung der Kenntnisse im Zusammenhang mit MySQL-Datenbanksperren“. Ich hoffe, dass dieser Artikel für jedermann beim Entwurf einer MySQL-Datenbank hilfreich ist. Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung der Lösung für das Nginx-Panikproblem
>>: Kleines Programm zur Implementierung eines einfachen Taschenrechners
Ich habe den Dialog beim Schließen verwendet und e...
Damit die Tabelle nicht zu kompakt wirkt, kann zw...
Inhaltsverzeichnis Bei der Entwicklung kann eine ...
Inhaltsverzeichnis 1. Langsame Abfragekonfigurati...
In diesem Artikel wird hauptsächlich die Breadcru...
1: Tag-Selektor Der Tag-Selektor wird für alle Ta...
Remote-SSH installieren und konfigurieren Öffnen ...
Überprüfen Sie zuerst die Datei /etc/group: [root...
In diesem Artikel wird der spezifische Code von j...
Problem: Der Überlauf der Auto-Increment-ID in ei...
Inhaltsverzeichnis Flache Kopie Tiefes Kopieren A...
Vorwort Kürzlich stieß ich bei der Arbeit auf ein...
Lambda-Ausdrücke Lambda-Ausdrücke, auch Closures ...
Inhaltsverzeichnis Vorwort Stillader CSS-Lader Sa...
Die Konfigurationsdatei nginx.conf lautet wie fol...