Comment formater des requêtes SQL
Un SQL brouillon est l'une des façons les plus rapides d'introduire des bugs. Quand une requête est sur une seule longue ligne sans indentation, il est dur de voir quelles conditions s'appliquent à quelles jointures, où commencent et finissent les sous-requêtes, ou si la logique est correcte.
Pourquoi le formatage compte
- Débogage — une requête bien formatée rend les erreurs de logique visibles. Vous pouvez suivre le flux de SELECT à WHERE puis à JOIN sans deviner.
- Revue de code — les relecteurs lisent du SQL formaté en quelques secondes. Une requête sur une ligne les oblige à l'analyser mentalement d'abord.
- Maintenance — quand vous revenez sur une requête des mois plus tard, le formatage vous dit ce qu'elle fait d'un coup d'œil.
- Collaboration — un formatage cohérent dans une équipe signifie que tout le monde lit le SQL de la même façon.
Comment formater du SQL
- Collez votre SQL — saisissez une requête minifiée ou brouillonne dans le formateur. Il gère SELECT, INSERT, UPDATE, DELETE, CREATE TABLE, ainsi que des requêtes complexes avec sous-requêtes et jointures.
- Configurez les options — choisissez la taille d'indentation et si les mots-clés doivent être en majuscules. Ces réglages correspondent au guide de style de votre projet.
- Copiez le résultat — le SQL formaté est prêt à être recollé dans votre éditeur, votre client de base de données ou votre documentation.
À quoi ressemble un bon formatage
Une requête comme select u.name, o.total from users u join orders o on u.id = o.user_id where o.total > 100 and u.active = 1 order by o.total desc devient :
SELECT
u.name,
o.total
FROM users u
JOIN orders o
ON u.id = o.user_id
WHERE o.total > 100
AND u.active = 1
ORDER BY o.total DESC
Chaque clause commence sur sa propre ligne. Les conditions sont indentées sous leur clause parente. Les jointures et leurs conditions ON sont clairement appariées.
Astuces
- Formatez avant de commiter — passez votre SQL dans un formateur avant de l'ajouter au contrôle de version. Cela garde les diffs propres et concentre les revues sur la logique, pas sur le style.
- Utilisez une casse de mots-clés cohérente — choisissez majuscules ou minuscules et tenez-vous-y dans tout votre projet. Les styles mélangés rendent les requêtes difficiles à lire.
- Découpez les requêtes complexes — si une requête reste difficile à lire même formatée, découpez-la en CTE (Common Table Expressions) ou en vues. Le formatage ne peut pas corriger une logique fondamentalement complexe.
- Vérifiez la coloration syntaxique — un bon formateur propose une coloration qui distingue mots-clés, chaînes et nombres, ce qui aide à repérer les coquilles.
Questions fréquentes
Faut-il écrire les mots-clés SQL en majuscules ?
C'est une convention largement suivie d'écrire les mots-clés SQL en majuscules (SELECT, FROM, WHERE) et les noms de tables ou colonnes en minuscules. Cela rend les requêtes plus faciles à lire visuellement. La plupart des guides de style le recommandent, mais aucun moteur de base de données ne l'impose.
Le formatage change-t-il l'exécution de la requête ?
Non. Les espaces et l'indentation n'ont aucun effet sur l'exécution SQL. Le formatage est purement pour la lisibilité humaine. Une requête minifiée et une indentée produisent le même résultat.
Quelle taille d'indentation utiliser ?
Deux ou quatre espaces sont tous deux courants. Choisissez ce que votre équipe utilise et restez cohérent. La plupart des formateurs SQL permettent de le configurer.
Mon SQL est-il envoyé sur un serveur ?
Non. Le formatage se fait entièrement dans votre navigateur. Vos requêtes ne quittent jamais votre appareil.