Elysia Tools

Parcourez outils, exemples, explications visuelles et guides thématiques dans un espace clair.

Catégories populaires

Dossiers

Langue
ZHESPTRUFRDEEN

Elysia Tools

Navigation mobile

Development

Visualiseur de Plan d’Exécution SQL

· Dernière mise à jour:2026-06-18

Collez la sortie EXPLAIN / EXPLAIN ANALYZE (PostgreSQL/MySQL/SQLite) pour obtenir un arbre des coûts, repérer les écarts lignes estimées/réelles et des suggestions d’index

Détails

Ce que cet outil vous aide à faire

Cet outil analyse la véritable sortie EXPLAIN — pas le texte SQL statique — et restitue le plan d’exécution sous forme d’arbre indenté, coloré par sévérité.

Entrées prises en charge (auto-détectées ou sélectionnables) :

  • PostgreSQL : JSON de EXPLAIN (FORMAT JSON, ANALYZE), ou la sortie TEXT indentée par défaut.
  • MySQL : sortie EXPLAIN FORMAT=JSON, ou le EXPLAIN tabulaire classique (id|select_type|table|type|key|rows|Extra).
  • SQLite : texte de EXPLAIN QUERY PLAN (SCAN/SEARCH … USING INDEX …).

Chaque nœud affiche : type, relation, index utilisé, coût/temps estimés, lignes estimées et — avec EXPLAIN ANALYZE — lignes et temps réels. Les divergences ≥10× entre lignes estimées et réelles sont signalées comme points chauds de statistiques.

Les diagnostics couvrent : sequential/full table scans sur de grandes tables, divergences de statistiques (ANALYZE périmé), filesorts, tables temporaires, nested loops coûteux, prédicats non sargables (fonctions sur colonnes indexées), SELECT *, ORDER BY sans LIMIT — chacun avec une suggestion concrète d’index ou de réécriture (ex. « ajoutez un index sur users(email) »).

Astuce : pour une sortie maximale, lancez EXPLAIN (ANALYZE, BUFFERS, FORMAT JSON) sous PostgreSQL ou EXPLAIN ANALYZE sous MySQL pour comparer estimations et réalité.

Exécution

Exécuter cet outil

Remplissez le formulaire, lancez l’outil et consultez le résultat au même endroit.

Exemples

Exemples adaptés à cet outil

Associé

Continuer avec des outils et dossiers associés

Rédigé par l'équipe Elysia Tools
Texte311
JSON107
SQL43
Query23
Cost14

Guide d'utilisation de l'outil

Découvrez quand utiliser cet outil, ce qu'il prend en charge et comment les utilisateurs l'appliquent.

Points clés

Catégorie
Development
Types d’entrée
textarea, select, number
Type de sortie
html
Exemples associés
4
API disponible
Oui

Aperçu

Le Visualiseur de Plan d’Exécution SQL transforme vos sorties textuelles ou JSON brutes issues de commandes EXPLAIN (PostgreSQL, MySQL, SQLite) en un arbre de coûts interactif et coloré. Il identifie instantanément les goulots d'étranglement de vos requêtes, tels que les scans de table complets ou les écarts de statistiques, et vous propose des suggestions concrètes d'indexation ou de réécriture.

Quand l’utiliser

  • Lors de l'optimisation de requêtes SQL lentes s'exécutant sur PostgreSQL, MySQL ou SQLite.
  • Pour identifier les écarts importants entre les lignes estimées par le planificateur et les lignes réellement lues lors d'un EXPLAIN ANALYZE.
  • Pour détecter rapidement les scans séquentiels (Seq Scan) ou les tris sur disque (filesort) nécessitant la création d'index.

Fonctionnement

  1. 1Collez la sortie brute de votre commande EXPLAIN ou EXPLAIN ANALYZE (au format JSON ou texte brut) dans le champ dédié.
  2. 2Sélectionnez le dialecte de votre base de données (PostgreSQL, MySQL, SQLite) ou laissez l'outil le détecter automatiquement.
  3. 3Ajustez éventuellement la profondeur maximale de l'arbre et ajoutez la requête SQL d'origine pour affiner le diagnostic.
  4. 4Analysez l'arbre généré pour repérer les nœuds critiques colorés et appliquez les suggestions d'indexation recommandées.

Cas d’usage

  • Analyse des performances d'une requête de rapport mensuel lente sur PostgreSQL en comparant les coûts estimés et réels.
  • Identification de la nécessité d'un index composite sur MySQL suite à la détection d'un filesort ou d'une table temporaire.
  • Résolution des problèmes de lenteur sur une base de données SQLite embarquée en analysant le plan de recherche d'index.

Exemples

1. Résolution d'un Seq Scan sur PostgreSQL

Développeur Backend

Contexte

Un développeur constate que la recherche d'utilisateurs par adresse e-mail prend plusieurs secondes en production.

Problème

Identifier pourquoi l'index sur la table `users` n'est pas utilisé lors de la recherche par e-mail.

Utilisation

Coller la sortie JSON de `EXPLAIN (FORMAT JSON, ANALYZE)` de la requête dans le visualiseur.

{
  "dialect": "postgresql",
  "sql": "SELECT * FROM users WHERE lower(email) = '[email protected]'"
}

Résultat

L'outil met en évidence un Seq Scan avec un écart de lignes (1000 estimées vs 95000 réelles) et suggère de créer un index fonctionnel sur `lower(email)`.

2. Optimisation d'un tri lourd sur MySQL

Administrateur de Base de Données

Contexte

Une requête de tableau de bord trie les commandes par date de création sans limite de lignes, provoquant des ralentissements.

Problème

Visualiser l'impact du tri et valider la nécessité d'un index ou d'une réécriture de requête.

Utilisation

Coller la sortie textuelle tabulaire de `EXPLAIN` MySQL contenant les colonnes `type`, `key` et `Extra`.

FAQ

Quels moteurs de bases de données sont pris en charge ?

L'outil prend en charge PostgreSQL (JSON et texte), MySQL (JSON et tabulaire classique) et SQLite (EXPLAIN QUERY PLAN).

Comment l'outil détecte-t-il les problèmes de statistiques obsolètes ?

Il compare les lignes estimées et les lignes réelles de la sortie ANALYZE et signale tout écart supérieur ou égal à un facteur 10.

Faut-il obligatoirement fournir la requête SQL d'origine ?

Non, la requête SQL est optionnelle, l'analyse repose principalement sur la structure de la sortie EXPLAIN fournie.

Qu'est-ce qu'un prédicat non sargable détecté par l'outil ?

C'est une condition (comme une fonction appliquée sur une colonne) qui empêche le moteur de base de données d'utiliser efficacement un index existant.

Mes données de plan d'exécution sont-elles envoyées à un serveur tiers ?

Non, l'analyse et la visualisation de votre plan d'exécution SQL sont traitées localement dans votre navigateur pour garantir la confidentialité de vos données.

Dossier

Revue de requetes SQL pour performance et integrite

Construisez, formatez et controlez le SQL avec logique de jointure, preuves de performance, plans d'execution, injection, cles et schema.

Accueil
Outils3201
Exemples593
Visualisations465
Visionneuses de fichiers103
Dossiers233
Étiquettes333
Images, audio et vidéo657

Outils de traitement, conversion et optimisation d’images, d’audio et de vidéo

Maths, dates et finance644

Calculateurs, outils numériques, logique de dates, statistiques et finance

Design et couleur297

Outils de couleur, mise en page, graphisme, style visuel et assistance design

Texte et rédaction209

Outils de rédaction, nettoyage, formatage, extraction et analyse de texte

Développement et Web193

Utilitaires développeur, réseau, débogage Web et assistants d’automatisation

Conversion et encodage175

Outils de conversion de formats, fichiers, archives, unités et encodages

Examen des sources FLAC/WAV et transmission des preuves
Revue et livraison d’un module de jeu promotionnel auto-hébergé
Relecture d'un lot de codes Stripe et contrôle préalable à l'importation
Tri technique des photos et transmission des candidates à la retouche
Structurer une capture d'interface, la relire et la transmettre au développement

© 2026 Elysia Tools. Tous droits réservés.

DocumentationTarifsÀ proposConditions d'utilisationPolitique de confidentialitéCookiesContact
Formats de données

Exemples de Scripts SQL

Exemples de requêtes SQL et scripts de base de données pour divers scénarios et cas d'usage

Sécurité

Exemples d'Injections SQL

Collection éducative de payloads d'injection SQL pour les tests de sécurité, l'évaluation des vulnérabilités et les pratiques de codage défensif

Développement

Echantillons SQL

Fichiers d exemple pour la visionneuse SQL dans le navigateur

Bases de données

Exemples Avancés PostgreSQL

Exemples avancés de base de données PostgreSQL incluant stratégies d'optimisation, requêtes complexes, indexation et réglage de performance

Development

Visionneuse de sauvegardes de jeu

Déposez n’importe quel fichier de sauvegarde — NBT Minecraft, GVAS Unreal Engine, conteneurs Palworld, saves texte JSON/XML/INI/Lua, profils SQLite — et obtenez le format détecté, les versions du moteur, les champs de progression clés et un arbre structurel borné.

Data Processing

Planificateur de migration CSV vers base de donnees

Infere un schema relationnel a partir dun CSV et genere CREATE TABLE et ALTER pour PostgreSQL, MySQL, SQLite ou SQL Server

Data Processing

Analyseur de logs structures

Detecte les formats de logs courants, extrait les champs principaux et exporte en JSON, CSV ou SQL.

Development

Auditeur de dépendances package.json

Audite un package.json pour l’hygiène des dépendances et la qualité des plages de versions, et peut inspecter l’arbre transitif depuis package-lock.json ou yarn.lock. Signale les doublons, wildcard/pré-version, clés non triées, métadonnées manquantes et dépendances runtime/dev mal classées.

{
  "dialect": "mysql",
  "sql": "SELECT * FROM orders ORDER BY created_at"
}

Résultat

L'arbre affiche un avertissement de type "filesort" et recommande d'ajouter un index sur la colonne `created_at` ou d'ajouter une clause `LIMIT`.