Préface — Pourquoi les développeurs doivent utiliser des index
Anatomie d'un index — À quoi ressemble un index ?
Les nœuds feuilles — Une liste doublement liée
Le B-Tree — C'est un arbre balancé
Index lents, partie I — Deux ingrédients rendent les index lents
La clause Where — Indexer pour améliorer les performances en recherche
L'opérateur d'égalité — Recherche de la clé exacte
Clés primaires — Vérifier l'utilisation des index
Clés concaténées — Index multi-colonnes
Index lents, Partie II — Le premier ingrédient, revisité
Fonctions — Utiliser des fonctions dans la clause
whereRecherche insensible à la casse —
UPPERetLOWERFonctions définies par l'utilisateur — Limitations des index utilisant une fonction
Sur-indexation — Éviter la redondance
Variables liées — Pour la sécurité et les performances
Rechercher un intervalle — Beyond equality
Plus grand, plus petit et
BETWEEN— L'ordre des colonne importe encore plusIndexer des filtres
LIKE—LIKEn'est pas pour la recherche plein texteCombinaison d'index — Pourquoi ne pas utiliser un index pour chaque colonne ?
Index partiels — Indexer les lignes sélectionnées
NULLdans la base de données Oracle — Une curiosité importanteNULLdans les index — Chaque index est un index partielContraintes
NOT NULL— affecte l'utilisation des indexÉmuler des index partiels — utiliser une indexation basée sur les fonctions
Conditions cachées — mauvaises utilisations standards
Dates — Faites particulièrement attention aux types
DATEChaînes numériques — Ne mélangez pas les types
Combiner des colonnes — utiliser des clauses
whereredondantesLogique intelligente — Une façon intelligente de rendre le SQL lent
Mathématique — les bases de données ne résolvent pas les équations
Tests et scalabilité — À propos du matériel
Volume de données — Le retour de la mauvaise indexation
Charge système — La charge de la production affecte les temps de réponse
Temps de réponse et bande passante — Scalabilité horizontale
L'opération de jointure — Rapide, si fait correctement
Boucles imbriquées — À propos du problème des sélections N+1 dans les ORM
Jointure de hachage — Requiert une approche complètement différente de l'indexation
Jointure par tri — Comme une fermeture éclaire sur deux ensembles triés
Regrouper les données — Pour réduire les entrées/sorties disques
Les prédicats des filtres pour index utilisés intentionellement — pour améliorer
LIKEParcours d'index couvrants — Éviter l'accès aux tables
Table organisée comme un index — Index regroupé sans les tables
Trier et grouper —
order bysérialisé : une troisième puissance« Order By » indexé — interactions de la clause
whereASC/DESCetNULL FIRST/LAST— changer l'ordre de l'index« Group By » indexé — Envoyer les données dans
group by
Résultats partiels — Paginer efficacement
Sélectionner les N premières lignes — si vous avez seulement besoin des quelques premières lignes
Récupérer la page suivante — Comparaison des méthodes de décalage et de recherche
Fonctions de fenêtrage — Pagination utilisant des requêtes analytiques
Insertion, suppression et mise à jour — Impacts de l'indexation sur les requêtes DML
Plans d'exécution — Récupérer et lire les plans d'exécution
Liste des mythes — Légendes habituelles
Schéma des exemples — Scripts
CREATEetINSERTDb2 (LUW) • MySQL • Oracle • PostgreSQL • SQL Server

