Dev Tools

Formateur SQL

Formatez ou minifiez vos requêtes SQL en un clic. Mots-clés en majuscules, indentation automatique.

Besoin de formater du JSON ?

Formatez, validez et minifiez votre JSON avec indentation configurable.

Formater du JSON

Estimation indicative. Ne constitue pas un conseil fiscal ou financier. Consultez un professionnel pour votre situation personnelle.

Questions fréquentes

À quoi sert un formateur SQL ?

Un formateur SQL réindente et structure automatiquement vos requêtes SQL pour les rendre lisibles. Il met les mots-clés SQL en majuscules, ajoute des sauts de ligne et une indentation cohérente.

Cela facilite la relecture, le débogage et la collaboration en équipe.

Quelle est la différence entre formater et minifier du SQL ?

Le formatage SQL rend la requête lisible par un humain : mots-clés en majuscules, indentation, sauts de ligne. La minification fait l'inverse : elle supprime tous les espaces superflus pour réduire la taille de la requête, utile pour l'embarquer dans du code ou réduire la bande passante.

Le formatage modifie-t-il le comportement de la requête ?

Non. Le formatage SQL est purement cosmétique. Il ne modifie pas la logique, les mots-clés SQL, les valeurs ou la structure de la requête. La requête formatée ou minifiée produit exactement le même résultat qu'avant.

Quels dialectes SQL sont supportés ?

Le formateur gère les mots-clés SQL standard compatibles avec la plupart des SGBD : MySQL, PostgreSQL, SQLite, SQL Server, Oracle, MariaDB. Les mots-clés propriétaires spécifiques à un dialecte sont passés tels quels.

Mon SQL est-il envoyé à un serveur ?

Non. Tout le traitement se fait localement dans votre navigateur, en JavaScript côté client. Vos requêtes SQL ne quittent jamais votre machine.

SQL formatter online : structurer et optimiser vos requêtes SQL

Pourquoi formater ses requêtes SQL ?

Le formatage SQL transforme une requête dense et illisible en un texte structuré avec indentation et sauts de ligne. Cette pratique est essentielle pour la maintenabilité du code : une requête bien formatée se relit plus vite, se débogue plus facilement et se partage en équipe sans ambiguïté. Les conventions de formatage incluent la mise en majuscules des mots-clés SQL (SELECT, FROM, WHERE) et l'alignement des clauses sur des lignes séparées.

Dans les projets professionnels, le formatage SQL fait partie des standards de qualité de code au même titre que le linting JavaScript ou le formatage Python avec Black. Des outils comme SQLFluff, pgFormatter ou les extensions VS Code intègrent le formatage SQL dans les pipelines CI/CD.

50+

mots-clés SQL reconnus par notre formateur (SELECT, JOIN, WHERE, GROUP BY, HAVING, UNION...)

La norme SQL : de SQL-86 à SQL:2023

Le langage SQL (Structured Query Language) est standardisé par l'ISO/IEC 9075 depuis 1986. La norme a évolué à travers plusieurs versions majeures : SQL-86, SQL-92, SQL:1999 (ajout des CTE avec WITH), SQL:2003 (fonctions de fenêtrage OVER), SQL:2011 (données temporelles) et SQL:2023 (JSON et Property Graph Queries).

Fonctionnalités SQL par version

SQL-92 Universel

Sous-requêtes, CASE, CAST

SQL:1999 Très répandu

CTE (WITH), RECURSIVE

SQL:2003 Répandu

Fonctions de fenêtrage (OVER, PARTITION BY)

SQL:2016 Croissant

JSON_TABLE, JSON_VALUE

SQL:2023 Émergent

Property Graph, JSON amélioré

Source : ISO/IEC 9075, évolution du standard SQL

Formater vs minifier du SQL

Formater

Lisibilité

Développement, débogage, revue de code

Minifier

Compacité

Embedding, transfert, logs

Le formatage ajoute de la structure visuelle : mots-clés en majuscules, indentation à 2 espaces pour les sous-clauses, saut de ligne avant chaque clause principale. La minification fait l'inverse : elle supprime les commentaires, les espaces superflus et les sauts de ligne pour produire la requête la plus compacte possible.

SELECT u.id, u.name FROM users u WHERE u.active = 1 ORDER BY u.name ASC

Bonnes pratiques de rédaction SQL

Au-delà du formatage, plusieurs conventions améliorent la qualité de vos requêtes :

  • Alias explicites. Utilisez des alias courts mais lisibles : u pour users, o pour orders. Préfixez toujours les colonnes avec l'alias de la table dans les requêtes multi-tables.
  • CTE plutôt que sous-requêtes imbriquées. Les Common Table Expressions (WITH) améliorent la lisibilité des requêtes complexes et permettent de réutiliser des résultats intermédiaires.
  • Requêtes paramétrées. Ne concaténez jamais de valeurs utilisateur dans vos requêtes. Utilisez des paramètres ($1, ?, :name) pour prévenir les injections SQL.
  • EXPLAIN ANALYZE. Avant d'optimiser, mesurez. La commande EXPLAIN ANALYZE révèle le plan d'exécution réel et les temps par étape.

Injection SQL

Ne construisez jamais de requêtes SQL par concaténation de chaînes avec des entrées utilisateur. Utilisez toujours des requêtes paramétrées (prepared statements) pour éviter les attaques par injection SQL, l'une des vulnérabilités les plus courantes (OWASP Top 10).

Erreurs fréquentes à éviter

  • SELECT * en production. Sélectionner toutes les colonnes charge des données inutiles, empêche l'utilisation d'index couvrants et casse le code si le schéma change.
  • Oublier les index. Une requête avec WHERE sur une colonne non indexée provoque un scan séquentiel. Créez des index sur les colonnes fréquemment filtrées ou jointes.
  • JOIN sans condition ON. Un CROSS JOIN accidentel peut générer un produit cartésien de millions de lignes. Vérifiez toujours la clause ON de vos jointures.
  • Confondre WHERE et HAVING. WHERE filtre avant le GROUP BY, HAVING filtre après l'agrégation. Utilisez HAVING uniquement pour les conditions sur les résultats agrégés.
  • N+1 queries. Exécuter une requête par ligne au lieu d'une seule requête avec JOIN ou IN multiplie les allers-retours réseau. Préférez notre formateur JSON pour inspecter les réponses API.

Sources et références

Dev & Tech

Sources : ISO/IEC 9075 (SQL standard) · PostgreSQL Documentation · MySQL Reference Manual. Formatage côté client, compatible MySQL, PostgreSQL, SQLite, SQL Server. Dernière mise à jour : avril 2026.