Maison >base de données >tutoriel mysql >Quels sont les types d'index courants dans MySQL ?

Quels sont les types d'index courants dans MySQL ?

王林
王林original
2020-06-28 10:07:483996parcourir

Les types d'index courants MySQL sont : 1. FULLTEXT ; 2. HASH ; 3. BTREE ; FULLTEXT est un index de texte intégral, actuellement pris en charge uniquement par le moteur MyISAM. Les index HASH peuvent être localisés une seule fois, ils sont donc extrêmement efficaces.

Quels sont les types d'index courants dans MySQL ?

Mysql possède actuellement les principaux types d'index suivants :

(tutoriel recommandé : tutoriel mysql)

TEXTE COMPLET, HASH, BTREE, RTREE.

Introduction détaillée :

1. FULLTEXT

est l'index de texte intégral, actuellement pris en charge uniquement par le moteur MyISAM. Il peut être utilisé dans CREATE TABLE, ALTER TABLE et CREATE INDEX, mais actuellement, seuls les index de texte intégral peuvent être créés sur les colonnes CHAR, VARCHAR et TEXT.

L'index de texte intégral n'est pas né avec MyISAM. Il semble résoudre le problème de la faible efficacité des requêtes basées sur du texte flou telles que WHERE name LIKE "%word%".

2. HASH

Parce que HASH est unique (presque 100 % unique) et a une forme semblable à une paire clé-valeur, il est très approprié comme index.

L'index HASH peut être localisé une seule fois et n'a pas besoin d'être recherché couche par couche comme un index arborescent, il est donc extrêmement efficace. Cependant, cette efficacité est conditionnelle, c'est-à-dire qu'elle n'est efficace que dans les conditions "=" et "in", et n'est toujours pas efficace pour les requêtes de plage, le tri et les index combinés.

3. BTREE

L'index BTREE est une sorte de méthode qui stocke la valeur de l'index dans une structure de données arborescente (arbre binaire) selon un certain algorithme. de l'arbre. En partant de la racine, il parcourt les nœuds afin d'obtenir la feuille. Il s'agit du type d'index par défaut et le plus couramment utilisé dans MySQL.

4. RTREE

RTREE est rarement utilisé dans MySQL et ne prend en charge que le type de données géométriques. Les seuls moteurs de stockage prenant en charge ce type sont MyISAM, BDb, InnoDb, NDb et Archive.

Par rapport au BTREE, l'avantage du RTREE est la recherche par plage.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

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
Article précédent:que signifie myisamArticle suivant:que signifie myisam