Formateur SQL
Transformez du SQL désordonné en requêtes propres et lisibles.
Fonctionne dans votre navigateur. Rien de ce que vous tapez n'est envoyé nulle part.
- 6 dialectes SQL
- Mots-clés en majuscules ou minuscules
- Rien n'est envoyé
Comment formater du SQL
- Collez votre requête SQL.
- Choisissez un dialecte, une casse de mots-clés et une taille d'indentation.
- Copiez ou téléchargez le SQL formaté.
Différences de dialecte prises en compte
| Dialecte | Particularité gérée |
|---|---|
| MySQL | Identifiants entre accents graves |
| PostgreSQL | Identifiants entre guillemets doubles et transtypages :: |
| SQL Server | Identifiants entre crochets et TOP au lieu de LIMIT |
| SQLite | Règles de guillemets plus permissives |
| BigQuery | Chemins de table entre accents graves comme project.dataset.table |
| SQL standard | Identifiants entre guillemets doubles de style ANSI, la cible par défaut |
Ce que le formatage change, et ce qu'il ne touche pas
- Change : la casse des mots-clés, l'indentation des clauses et jointures, et où tombent les retours à la ligne avant SELECT, FROM, WHERE et JOIN.
- Ne touche pas : les noms de tables et de colonnes, le contenu des chaînes littérales, et les commentaires dans la requête.
- Les commentaires écrits avec -- ou entourés de /* */ restent exactement où ils étaient, attachés à la même ligne ou au même bloc.
Conseils pour formater du SQL
- Collez plusieurs instructions séparées par des points-virgules et chacune se formate à sa place.
- Choisissez le dialecte réellement utilisé par votre base de données, pour que les guillemets d'identifiants dans le résultat correspondent à ce qu'attend votre serveur.
- Si le style de guillemets d'un dialecte provoque une erreur dans votre base, essayez le SQL standard et ajustez les identifiants à la main.
- Une indentation plus large peut rendre une longue requête avec beaucoup de jointures plus facile à parcourir, car chaque niveau d'imbrication ressort davantage.
FAQ Formateur SQL
Quels dialectes SQL sont pris en charge ?
SQL standard, MySQL, PostgreSQL, SQL Server, SQLite et BigQuery. Chacun gère les guillemets et les fonctions un peu différemment.
Cela vérifie-t-il si mon SQL est correct ?
Non. Cela reformate la requête pour la lisibilité. Cela ne se connecte pas à une base de données et ne valide pas les noms de tables et de colonnes.
Puis-je formater tout un fichier de requêtes à la fois ?
Oui. Collez plusieurs instructions séparées par des points-virgules et chacune est formatée à sa place.
Que contrôle la taille d'indentation ?
Elle règle combien d'espaces reçoit chaque niveau d'imbrication, de 2 pour des requêtes compactes jusqu'à 8 pour des jointures et sous-requêtes profondément imbriquées.
Mon SQL est-il envoyé quelque part ?
Non. Le formatage se fait dans votre navigateur, donc vos requêtes et toute donnée qu'elles contiennent restent sur votre appareil.
Le formatage réordonne-t-il ma requête ?
Non. Les clauses, jointures et sous-requêtes restent dans l'ordre où vous les avez écrites. Seuls l'indentation, les retours à la ligne et la casse des mots-clés changent.
Peut-il formater des procédures stockées ou des scripts avec des variables ?
Les instructions SELECT, INSERT, UPDATE et DELETE simples se formatent bien. La syntaxe procédurale propre à un dialecte, comme le flux de contrôle T-SQL ou les blocs PL/pgSQL, peut ne pas s'indenter aussi proprement, car le formateur cible la syntaxe de requête standard.
Gère-t-il les CTE (clauses WITH) et les fonctions de fenêtrage ?
Oui. Les expressions de table communes et les fonctions de fenêtrage se formatent comme toute autre syntaxe que comprend la bibliothèque sql-formatter sous-jacente, avec leur propre indentation.