Heim > Datenbank > MySQL-Tutorial > So verwenden Sie den MySQL-Index

So verwenden Sie den MySQL-Index

藏色散人
Freigeben: 2020-09-16 09:37:56
Original
7919 Leute haben es durchsucht

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.

So verwenden Sie den MySQL-Index

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就是表的主键
Nach dem Login kopieren

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);
Nach dem Login kopieren

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);
Nach dem Login kopieren

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 ...');
Nach dem Login kopieren

Häufige Fehler bei der Verwendung der Volltextindizierung:

select * from c where content like "%mysql%";
Nach dem Login kopieren

Volltext wird hier nicht verwendet. Der Index kann mit EXPLAIN angezeigt werden. Korrekte Verwendung:

select *  from c where match(title,content) against ('MYSQL');
Nach dem Login kopieren

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)
Nach dem Login kopieren

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;
Nach dem Login kopieren

3. Index löschen

alter table table_name drop index 索引名;
Nach dem Login kopieren

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!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage