Hier ist eine kurze Einführung in Indizes: Der Zweck des Hinzufügens von Indizes besteht darin, die Leistung von Datenbankabfragen zu verbessern. Indizes sind die kostengünstigsten Dinge. Es ist nicht erforderlich, Speicher hinzuzufügen, Programme zu ändern oder SQL anzupassen. Führen Sie einfach einen korrekten Indexerstellungsvorgang aus, und die Abfragegeschwindigkeit kann sich um das Hundert- oder Tausendfache erhöhen. Das ist verlockend, aber nicht umsonst. Die Erhöhung der Abfragegeschwindigkeit erfolgt auf Kosten der Geschwindigkeit von Einfügen, Aktualisieren und Löschen. Darüber hinaus beträgt die Indexgröße im Allgemeinen ein Drittel der Daten. Darüber hinaus muss der Index in den Speicher geladen werden. Wenn alle Felder indiziert sind, wird Speicher geopfert. Daher ist es notwendig, Indizes entsprechend hinzuzufügen. Hier ist eine kurze Einführung in die häufig verwendeten Indizes in MySQL: Bevor Sie einen Index hinzufügen, prüfen Sie am besten, welche Indizes bereits in der Tabelle vorhanden sind: „Index aus Tabellenname anzeigen“; 1. Primärschlüsselindex Hinweis: In einer Tabelle kann es nur einen Primärschlüsselindex geben, Sie können jedoch mehrere Indizes hinzufügen, z. B. einen eindeutigen Index, einen normalen Index und einen Volltextindex. Primärschlüsselindex: Wird normalerweise beim Erstellen der Tabelle hinzugefügt. Beispielsweise ist die ID normalerweise der Primärschlüsselindex plus automatischer Inkrementierung. Eigenschaften des Primärschlüsselindex: darf nicht leer und eindeutig sein. 2. Gewöhnlicher Index Erstellen Sie einen normalen Index: 3. Eindeutiger Index Erstellen Sie einen eindeutigen Index: Der Unterschied zwischen einem eindeutigen Index und einem Primärschlüsselindex: Eindeutiger Index: kann mehrere Nullen enthalten, aber der Dateninhalt darf nicht wiederholt werden Primärschlüsselindex: darf nicht null sein und der Inhalt muss eindeutig sein. Der Unterschied zwischen beiden besteht darin, dass der Primärschlüsselindex nicht null sein kann und der eindeutige Index mehrere Nullen enthalten kann. Der Rest ist gleich. 4. Volltextindizierung Volltextindizierung ist nur für MyISAM verfügbar (InnoDB unterstützt auch Volltextindizierung nach MySQL 5.6) [5.7 unterstützt MyISAM nicht] Die Volltextindizierung zielt hauptsächlich auf Textdateien wie Artikel und Titel ab. Erstellen Sie beim Erstellen einer Tabelle einen Volltextindex: CREATE TABLE `Artikel` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT, `Titel` varchar(200) DEFAULT NULL, ` Inhaltstext`, Primärschlüssel (`id`), VOLLTEXT-SCHLÜSSEL `Titel` (`Titel`,`Inhalt`) ) ENGINE=MyISAM (InnoDB unterstützt nach 5.6 auch die Volltextindizierung, aber 5.7 unterstützt die MyISAM-Engine nicht) DEFAULT CHARSET=utf8; So erstellen Sie einen Volltextindex für eine vorhandene Tabelle: ALTER TABLE-Artikel ADD FULLTEXT INDEX Volltext_Artikel (Titel, Inhalt); Auch bei der Verwendung des Volltextindexes gibt es nach dessen Erstellung einiges zu beachten: Es ist bekannt, dass Fuzzy-Abfragen in der Datenbank mit dem Schlüsselwort „like“ durchgeführt werden, zum Beispiel: SELECT * FROM Artikel WHERE Inhalt LIKE '%Abfragezeichenfolge%'; Verwenden wir Volltextindizes auf die gleiche Weise? Natürlich nicht. Für Abfragen mit Volltextindizes müssen wir eine spezielle Syntax verwenden. Wenn wir beispielsweise den Volltext der angegebenen Abfragezeichenfolge in den Spalten „Titel“ und „Inhalt“ der Artikeltabelle suchen möchten, können wir die SQL-Anweisung wie folgt schreiben: SELECT * FROM Artikel WHERE MATCH(Titel, Inhalt) AGAINST ('Abfragezeichenfolge'); Bitte beachten Sie: Der integrierte Volltextindex von MySQL kann nur Volltextsuchen in englischen Texten durchführen und derzeit keine Volltextsuchen in chinesischen Texten. Wenn wir eine Volltextsuche in Textdaten, einschließlich Chinesisch, durchführen müssen, müssen wir zur Verarbeitung von Chinesisch die Sphinx/Coreseek-Technologie verwenden. Hinweis: Derzeit werden bei Verwendung des von MySQL bereitgestellten Volltextindex nicht die erwarteten Suchergebnisse erzielt, wenn die Abfragezeichenfolge zu kurz ist. Die standardmäßige Mindestlänge eines Wortes, das in einem MySql-Volltextindex gefunden werden kann, beträgt 4 Zeichen. Wenn die Abfragezeichenfolge Stoppwörter enthält, werden diese Stoppwörter außerdem ignoriert. Versuchen Sie nach Möglichkeit, die Tabelle zu erstellen und alle Daten einzufügen, bevor Sie den Volltextindex erstellen, anstatt den Volltextindex direkt beim Erstellen der Tabelle zu erstellen, da Ersteres effizienter ist als Letzteres. Index löschen SQL-Anweisung: Nach der kurzen Einführung oben: Welche Felder sollten indiziert werden? 1. Für häufig abgefragte Felder sollten Indizes erstellt werden. 2. Für Felder, die sehr häufig aktualisiert werden, sollten keine Indizes erstellt werden. 3. Felder mit geringer Eindeutigkeit, wie etwa das Feld „Geschlecht“, sollten nicht indiziert werden. 4. Felder, die nicht nach der Where-Bedingung erscheinen, sollten nicht indiziert werden. Ein Index sollte erstellt werden, wenn die folgenden Bedingungen erfüllt sind: 1. Für häufig abgefragte Felder, die oft nach der Where-Bedingung erscheinen, sollten Indizes erstellt werden. 2. Für Felder, die nicht häufig aktualisiert werden, können Sie Indizes erstellen. Hinweise zur Verwendung von Indizes 1. Für einen erstellten mehrspaltigen Index wird der Index im Allgemeinen verwendet, solange die Abfragebedingung die äußerste linke Spalte verwendet.
2. Bei Abfragen mit LIKE wird der Index nicht verwendet, wenn die Abfrage „%a“ ist, aber bei „a%“ wird der Index verwendet. Sie können am Anfang keine variablen Werte wie % und _ verwenden 3. Wenn die Bedingung ein „oder“ enthält, wird es nicht verwendet, auch wenn die Bedingung einen Index hat. 4. Wenn der Spaltentyp eine Zeichenfolge ist, müssen Sie die Daten in der Bedingung in Anführungszeichen setzen.
Zusammenfassen Das Obige ist der vollständige Inhalt dieses Artikels. Ich hoffe, dass der Inhalt dieses Artikels einen gewissen Lernwert für Ihr Studium oder Ihre Arbeit hat. Vielen Dank für Ihre Unterstützung von 123WORDPRESS.COM. Wenn Sie mehr darüber erfahren möchten, schauen Sie sich bitte die folgenden Links an Das könnte Sie auch interessieren:
|
<<: Vue3.x verwendet mitt.js für die Komponentenkommunikation
>>: Erläuterung des Beispiels für die automatische Anmeldung unter Linux
Code kopieren Der Code lautet wie folgt: <div ...
Inhaltsverzeichnis einführen Link Start Gehen Sie...
In diesem Artikel wird der spezifische Code von j...
Dieser Artikel stellt hauptsächlich die Beispiela...
Konfiguration der Hostdatei des Linux-Servers Die...
Dieser Artikel stellt hauptsächlich den Prozess d...
Erster Blick auf die Wirkung: Wenn die Maus über ...
1 Problembeschreibung Dieser Artikel sortiert den...
Responsive Layoutsysteme sind in den heute gängig...
Ich habe erst vor ein paar Tagen mit der Arbeit b...
Inhaltsverzeichnis WarteschlangeMikrotask asynchr...
Ich bin erst kürzlich zufällig auf diese kleine A...
Dieser Artikel beschreibt anhand von Beispielen d...
XML-Dateien sollten so weit wie möglich in UTF-8 ...
Vue+js realisiert das Ein- und Ausblenden des Vid...