Implementierung eines MySQL-Gemeinschaftsindex (zusammengesetzter Index)

Implementierung eines MySQL-Gemeinschaftsindex (zusammengesetzter Index)

Gemeinsamer Index

Die Definition des gemeinsamen Index in diesem Artikel lautet (MySQL):

ALTER TABLE `Tabellenname` ADD INDEX (`col1`,`col2`,`col3`);

Vorteile gemeinsamer Indizes

Wenn mehr als eine SQL-Anweisung vorhanden ist, sind zwei Bedingungen erforderlich.

SELECT * FROM `user_info` WHERE Benutzername='XX',Passwort='XXXXXX';

Wenn der Index das password durchsucht, wird die Datenmenge erheblich reduziert, die Indextrefferquote verringert und die Effizienz des Index erhöht.

Die Größe eines passenden Indexes ist kleiner als die eines einzelnen Indexes und es handelt sich lediglich um einen Indexbaum, der mehr Zeit und Platzaufwand spart als ein einspaltiger Index.

Das Wesen gemeinsamer Indextreffer (Verständnis der Übereinstimmung ganz links)

Definition

Wenn Sie einen gemeinsamen Index ( col1 , col2 , col3 ) erstellen, entspricht dies dem Erstellen eines einspaltigen Index ( col ). Damit der gemeinsame Index ( clo1 , clo2 ) und der gemeinsame Index ( col1 , col2 , col3 ) wirksam werden, können Sie nur die drei Kombinationen von col1 und col1 , col2 und col1 , col2 , col3 verwenden. Natürlich ist auch die Kombination von col1 und col3 möglich, aber tatsächlich wird nur der Index von col1 verwendet col3 wird nicht verwendet!

Diagramm

Allgemeines Verständnis

Ein gemeinsamer Index ist wie ein Telefonbuch, das nach姓氏——名字geordnet ist. Sie können den Index nur erreichen, wenn Sie zuerst den Nachnamen ermitteln. Die folgenden Anweisungen können den gemeinsamen Index korrekt erreichen (die Felder direkt in = und IN können in beliebiger Reihenfolge stehen und der MySQL-Abfrageoptimierer kann sie in eine vom Index erkannte Form optimieren):

-- Nur Spalte 1 und Spalte 2 treffen
SELECT * FROM `Tabellenname` WHERE `col1`='XX';
-- Treffer Spalte1, Spalte2. Die Reihenfolge von col1 und col2 kann umgekehrt werden: SELECT * FROM `table_name` WHERE `clo1`='XX',`clo2`='XXX'; 
SELECT * FROM `Tabellenname` WHERE `clo2`='XXX', `clo1`='XX';
-- Treffer col1,col2,col3. Ebenso kann die Reihenfolge der drei Spalten umgekehrt werden. SELECT * FROM `table_name` WHERE `col1`='X',`col2`='XX',`col3`='XXX';
SELECT * FROM `Tabellenname` WHERE `col1`='X',`col3`='XX',`col2`='XXX';
SELECT * FROM `Tabellenname` WHERE `col2`='X',`col3`='XX',`col1`='XXX';

Dies ist das Ende dieses Artikels über die Implementierung des MySQL-Gemeinschaftsindex (zusammengesetzter Index). Weitere relevante MySQL-Gemeinschaftsindex-Inhalte 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:
  • Zusammenfassung der MySQL-Verbundindizes
  • Detaillierte Untersuchung des MySQL-Verbundindex
  • Optimieren Sie das MySQL-Limit, verweisen Sie auf den zusammengesetzten Index der schnellen Paging von einer Million auf zehn Millionen und wenden Sie ihn auf ein leichtes Framework an
  • Optimieren Sie das MySQL-Limit, verweisen Sie auf den zusammengesetzten Index der schnellen Paging von einer Million auf zehn Millionen und wenden Sie ihn auf ein leichtes Framework an
  • Wie wirkt sich der zusammengesetzte Index von MySQL aus?

<<:  Die HTML-Tag-ID kann eine Variable sein

>>:  Eine kurze Diskussion über Lösungen zum Stören von CSS3-Animationen

Artikel empfehlen

Verwenden einer MySQL-Datenbank mit Python 3.4 unter Windows 7

Der detaillierte Prozess der Verwendung der MySQL...

Tutorial zum Ändern des Root-Passworts in MySQL 5.7

Versionsupdate, das Passwortfeld im Originalbenut...

Vue3 kapselt seine eigene Paging-Komponente

In diesem Artikelbeispiel wird der spezifische Co...

Vue verwendet Openlayers zum Laden von Tiandi Map und Amap

Inhaltsverzeichnis 1. Weltkarte 1. Installieren S...

CSS3-Mauszeiger-Übergangszoomeffekt

Das Folgende ist ein Bild-Zoom-Effekt, der in rei...

Beispiel für die Bereitstellung einer Laravel-Anwendung mit Docker

Das in diesem Artikel verwendete PHP-Basisimage i...

Detaillierter Installationsprozess von mysql5.7.21 unter Win10

In diesem Artikel erfahren Sie mehr über die Inst...

Detaillierte Erläuterung des zeitgesteuerten Protokollschneidens von Nginx

Vorwort Standardmäßig werden Nginx-Protokolle in ...

Vue-Beispielcode mit dem Animationseffekt „Übergangskomponente“

Die Übergangsdokumentadresse definiert eine Hinte...