Maison >base de données >tutoriel mysql >Quel est le processus de requête d'index secondaire MySQL ?
L'index clusterisé est la structure d'index basée sur la clé primaire créée par innodb par défaut, et les données de la table sont directement placées dans l'index clusterisé en tant que page de données du nœud feuille : #🎜 🎜#
Recherche de données basée sur la clé primaire : partir du nœud racine de l'index clusterisé pour effectuer une recherche binaire, trouver la page de données correspondante en cours de route et localisez directement la clé primaire en fonction des données cibles du répertoire de pages. Si vous souhaitez indexer d'autres champs, ou même créer un index commun basé sur plusieurs champs, à quoi ressemble la structure de l'index ? En supposant que d'autres champs soient indexés, comme le nom, l'âge, etc., le même principe s'applique. Par exemple, lorsque vous insérez des données :#🎜🎜 #Il s'agit d'une structure d'index basée sur l'arborescence B+ dont le champ de nom est indépendant de l'index clusterisé. Les données stockées dans ses nœuds feuilles. contient uniquement les valeurs de la clé primaire et du champ nom.
Les règles de tri globales sont les mêmes que les règles de tri de l'index clusterisé selon la clé primaire, soit :
# 🎜🎜#
L'arbre d'index B+ du champ nom construira également une page d'index multi-niveaux. La page d'index stocke :Numéro de page de niveau suivant# 🎜🎜#
select * from t where name='xx', recherchez d'abord dans l'arborescence d'index de noms en fonction de la valeur du nom et recherchez le nœud feuille. Seule la valeur de clé primaire correspondante peut être trouvée. , mais ne peut pas être trouvé dans tous les champs de cette ligne de données. Nous devons donc encore renvoyer la table : nous devons accéder à l'index clusterisé à partir du nœud racine en fonction de la valeur de la clé primaire, trouver la page de données du nœud feuille et localiser le fichier complet ligne de données correspondant à la valeur de la clé primaire. Ce n'est qu'à ce stade que toutes les valeurs de champ
peuvent être supprimées.
Joint Index
Par exemple, nom+âge, le processus en cours est le même et un arbre B+ indépendant est établi après que la page de données du nœud feuille stocke l'identifiant. +nom+âge, la valeur par défaut est Trier par nom, le même nom est trié par âge, il en va de même pour le tri des valeurs nom+âge entre différentes pages de données. select *
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!