Plan d'exécution
# Plan d'exécution

En informatique, et plus précisément dans le domaine des bases de données, un plan d'exécution est un schéma pas à pas des opérations d'accès aux données d'un système de gestion de base de données SQL.

## Principe

L'optimisation de requête consiste à étudier la meilleure manière d'exécuter une requête SQL. Comme les optimiseurs automatiques ne sont pas parfaits, les administrateurs de bases de données sont parfois amenés à examiner et préciser le plan d'exécution le plus rapide, par exemple en définissant l'algorithme de jointure à utiliser en tenant compte du volume des données manipulées. Les mots clés à inclure dans les requêtes SQL pour influencer le plan d'exécution sont appelés les hints (ou indicateurs).

Pour visualiser le rendu, certains SGBD permettent de représenter les plans d'exécution sous forme de texte ou de graphique. En ligne de commande, il est possible d'utiliser l'instruction SQL EXPLAIN pour afficher le plan d'exécution, notamment sur un SELECT.

## Exemple

Voici une requête avec son plan d'exécution affiché par Microsoft SQL Server :

On y voit que le moteur commence (en bas du plan d'exécution) par scanner la table Employee sur la clé primaire ContactID, puis recherche la correspondance avec la table Contact.

Le résultat est ensuite joint par l'algorithme Nested Loops, et classé par LastName.

