Maison  >  Article  >  base de données  >  Utilisation des index MySQL

Utilisation des index MySQL

黄舟
黄舟original
2017-02-06 10:23:091315parcourir

1.1 Création d'index
 1.1.1 Création d'index de clé primaire
Créer un index de clé primaire lors de la création d'une table
 

create table aaa(id int primary key,name varchar(64) not null default ”);

Créez d'abord une table puis créez un index de clé primaire
 

create table aaa(id int,name varchar(64) not null default ”);
  alter table aaa add primary key(id);

Caractéristiques de l'index de clé primaire
1) Une table ne peut avoir qu'une seule clé primaire au maximum
2) Une clé primaire peut pointer vers plusieurs colonnes (primaire composite key)
3) Index de clé primaire L'efficacité est la plus élevée, nous devrions donc donner l'identifiant Généralement, l'identifiant est auto-incrémenté
 4) Les colonnes de l'index de clé primaire ne peuvent pas être répétées ou nulles 1.1.2 L'index unique est créé directement lors de la création de la table. Une ou plusieurs colonnes sont un index unique
 

mysql> create table aaa(id int,name varchar(64) not null default ”,email varchar(64) not null default ” unique);
Créer un index unique après la création de la table

 

1)mysql> create unique index uni_name on aaa (name);
  2)mysql> alter table aaa add unique (email);
Caractéristiques de l'index unique

1) Il peut y avoir plusieurs index uniques dans une table
2) L'index unique ne peut pas être répété, mais si vous ne spécifiez pas non nul, l'index unique peut être nul et il peut y en avoir plusieurs.
3) Quand utiliser un index unique ? Il ne peut être utilisé que lorsque les données d'une certaine colonne ne seront pas répétées
4) L'index unique est également très efficace, vous pouvez envisager de l'utiliser en premier
1.1.3 Les index ordinaires sont créés directement lors de la création Lors de la création d'une table, spécifiez une ou plusieurs colonnes comme index commun
 

mysql> create table aaa(id int,name varchar(64) not null default ”,namevarchar(64) not null default ” index);
Créer un index commun après avoir créé la table



 1)mysql> create index ind_name on aaa (name);
  2)mysql> alter table aaa add index(name);
Fonctionnalités

1) Il peut y avoir plusieurs index ordinaires dans une table, et un index ordinaire peut également pointer vers plusieurs colonnes
2) Données dans des colonnes d'index ordinaires peut être répété
3) L'efficacité est relativement faible
1.1 .4 Création d'un index de texte intégral
Présentation : L'index de texte intégral est un index d'articles, de caractères chinois et d'anglais, qui permet de récupérer rapidement un mot-clé dans l'article
 

CREATE TABLE articles (
  id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
  title VARCHAR(200),
  body TEXT,
  FULLTEXT (title,body)
  ) engine myisam charset=utf8;
Utiliser : sélectionner * parmi les articles où match(corps) contre('météo');

Caractéristiques
1) Le contenu complet par défaut de MySQL index de texte, efficace uniquement pour le moteur de stockage myisam
2) L'index de texte intégral par défaut de MySQL, ne prend en charge que l'anglais
3) Mots vides : pour les lettres particulièrement courantes, aucun index ne sera construit
4) Degré de correspondance : L'index de texte intégral est mis en correspondance selon une certaine probabilité.
Comment résoudre le problème que l'index de texte intégral de MySQL ne prend pas en charge le chinois
1) Utilisez un plug-in de recherche chinois mysqlcft pour MySQL
2) Vous pouvez utiliser le moteur de recherche chinois spécialisé sphinx version chinoise ( coreseek) 1.2 Requête d'index
Nom de la table Desc
afficher les clés du nom de la table G
afficher l'index du nom de la table G
afficher les index du nom de la table G
1.3 Modification de l'index
Supprimer le premier et add
1.4 Supprimer l'index
DROP INDEX index name ON table;
ALTERTABLE table name DROP INDEX index name; faible unicité.Il convient de créer un index seul, même s'il est fréquemment utilisé comme condition de requête, les champs fréquemment mis à jour ne conviennent pas à la création d'index. Les champs qui n'ont pas de clause WHERE ne doivent pas créer d'index. 🎜>

Ce qui précède est le contenu de l'index MySQL. Pour plus de contenu connexe, veuillez faire attention au site Web PHP chinois (www.php.cn) !

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn