So verwenden Sie den MySQL-Index: [Tabelle ändern, Tabellenname hinzufügen, Indexnamen hinzufügen (Spalte)], was bedeutet, dass ein normaler Index hinzugefügt wird. Der Zweck des MySQL-Index besteht darin, die Abfrageeffizienz zu verbessern.
Der Zweck des MySQL-Index besteht darin, die Abfrageeffizienz zu verbessern, die mit einem Wörterbuch verglichen werden kann. Wenn wir das Wort „MySQL“ nachschlagen möchten Sie müssen auf jeden Fall den m-Buchstaben finden und dann von vorne beginnen. Gehen Sie nach unten, um den y-Buchstaben zu finden, und suchen Sie dann die verbleibende SQL. Ohne einen Index müssen Sie möglicherweise alle Wörter durchsehen, um das Gesuchte zu finden.
(Empfohlenes Tutorial: MySQL-Video-Tutorial )
Beim Erstellen eines Index müssen Sie überlegen, welche Spalten für SQL-Abfragen verwendet werden, und dann eine oder mehrere erstellen Spalten für diesen Spaltenindex. Tatsächlich ist ein Index auch eine Tabelle, die den Primärschlüssel oder das Indexfeld enthält, sowie einen Zeiger, der jeden Datensatz auf die tatsächliche Tabelle verweist. Indizes sind für Datenbankbenutzer nicht sichtbar; sie dienen lediglich der Beschleunigung von Abfragen. Datenbanksuchmaschinen verwenden Indizes, um Datensätze schnell zu finden.
MySQL verfügt über vier Arten von Indizes (Primärschlüsselindex/normaler Index/Volltextindex/eindeutiger Index)
1. Hinzufügen eines Index
1.1 Hinzufügen eines Primärschlüssels index
Wenn eine Tabelle eine Spalte als Primärschlüssel festlegt, ist die Spalte der Primärschlüsselindex
create table a( id int primary key auto_increment, name varchar(20) not null default '' ); //这里id就是表的主键
Wenn der Primärschlüsselindex beim Erstellen der Tabelle nicht angegeben wird, können Sie ihn auch hinzufügen nach dem Erstellen der Tabelle:
alter table table_name add primary key (column name);
1.2 Gewöhnlicher Index
Der gewöhnliche Index wird normalerweise hinzugefügt, nachdem die Tabelle erstellt wurde,
create index 索引名 on table_name(column1,column2); alter table table_name add index 索引名(column1,column2);
1.3 Volltextindex
Erstens ist der Volltextindex hauptsächlich für Textdateien gedacht, z. B. Artikel, Titel und Volltextindizierungen sind nur für MyISAM gültig (InnoDB unterstützt auch die Volltextindizierung nach mysql5.6)
create table c( id int primary key auto_increment , title varchar(20), content text, fulltext(title,content) )engine=myisam charset utf8; insert into c(title,content) values ('MySQL Tutorial','DBMS stands for DataBase ...'), ('How To Use MySQL Well','After you went through a ...'), ('Optimizing MySQL','In this tutorial we will show ...'), ('1001 MySQL Tricks','1. Never run mysqld as root. 2. ...'), ('MySQL vs. YourSQL','In the following database comparison ...'), ('MySQL Security','When configured properly, MySQL ...');
Häufige Fehler bei der Verwendung der Volltextindizierung:
select * from c where content like "%mysql%";
Volltext wird hier nicht verwendet. Der Index kann mit EXPLAIN angezeigt werden. Korrekte Verwendung:
select * from c where match(title,content) against ('MYSQL');
Bemerkungen:
1. Der Volltextindex in MySQL ist nur für Myisam wirksam.
2. Der von MySQL selbst bereitgestellte Volltext ist für Englisch wirksam ;sphinx( coreseek)-Technologie zur Verarbeitung von Chinesisch
3. Die Verwendungsmethode ist Übereinstimmung (Feldname..) mit ('Schlüsselwort')
1.4 eindeutiger Index
create table d(id int primary key auto_increment , name varchar(32) unique)
d Name in der Tabelle Es ist der eindeutige Index. Der eindeutige Index kann mehrere Nullen haben und darf nicht wiederholt werden. Im Vergleich zum Primärschlüsselindex kann das Primärschlüsselfeld nicht null oder wiederholt sein.
2. Index abfragen
show indexes from table_name; show keys from table_name;
3. Index löschen
alter table table_name drop index 索引名;
Das obige ist der detaillierte Inhalt vonSo verwenden Sie den MySQL-Index. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!