Formateur SQL
Transformez une requête d'une ligne en SQL lisible, chaque clause sur sa propre ligne et les mots-clés dans la casse de votre choix.
Formater du SQL en ligne
Les requêtes copiées depuis des logs d'application, la sortie de débogage d'un ORM ou le message d'un collègue arrivent généralement sur une seule longue ligne. Les relire ou les déboguer sous cette forme est lent et source d'erreurs. Cette page est le formateur de code réglé sur SQL, avec la bibliothèque open source sql-formatter qui tourne dans votre navigateur.
Avant et après
La requête select id, name from users where active = 1 and role in ('admin','editor') order by name est un exemple typique de requête sur une ligne tirée d'un log.
La version formatée place SELECT, FROM, WHERE et ORDER BY chacun sur sa propre ligne, liste id et name sur des lignes séparées et indentées sous SELECT, et indente active = 1 et AND role IN ('admin', 'editor') sous WHERE : chaque condition peut ainsi être lue, commentée ou modifiée séparément.
Pourquoi le dialecte compte
| Syntaxe | Dialecte |
|---|---|
`backtick names` | MySQL, MariaDB |
[bracket names] | SQL Server |
Conversions value::integer | PostgreSQL |
LIMIT vs TOP vs FETCH FIRST | Chaque base a le sien |
Choisir le bon dialecte permet au formateur de reconnaître ces formes au lieu de les traiter comme des erreurs.
Conseils de style
- Les mots-clés en majuscules rendent la structure d'une longue requête facile à parcourir ; beaucoup d'équipes les exigent.
- Une colonne par ligne permet aux diffs de revue de code de montrer exactement quelle colonne a changé.
- Gardez le SQL formaté dans votre gestionnaire de versions, et ne minifiez que là où une seule ligne est exigée.
Outils associés
Pour comparer deux versions d'une requête, utilisez le comparateur de textes. Pour le JSON renvoyé par une requête, le formateur JSON le rend lisible.