Skip to content

Commentaires SQL – Documenter vos requêtes

Bonne lecture et bon apprentissage !
Junior TSAFACK – 08/08/2026
⏱️ Temps de lecture estimé : 4 minutes


Il peut être intéressant d’insérer des commentaires dans les requêtes SQL pour mieux s’y retrouver lorsqu’il y a de grosses requêtes complexes, ou pour documenter le code pour d’autres développeurs. Il existe plusieurs façons de faire des commentaires dans le langage SQL, qui dépendent notamment du Système de Gestion de Base de Données utilisé (SGBD) et de sa version.


Le double tiret (--) permet de faire un commentaire jusqu’à la fin de la ligne. Tout ce qui suit sur la ligne est ignoré par le SGBD.

SELECT * -- Ceci est un commentaire
FROM table1; -- Et celui-ci aussi
-- Récupérer tous les clients
SELECT * FROM client;
-- Filtrer par ville
SELECT * FROM client WHERE ville = 'Paris'; -- Seulement Paris
SGBD Support
MySQL Oui (depuis la version 3.23.3)
PostgreSQL Oui
Oracle Oui
SQL Server Oui
SQLite Oui

Bon à savoir : Pour MySQL, le -- doit être suivi d’un espace pour être valide. Exemple : -- commentaire (avec un espace après les tirets).


Le symbole dièse (#) permet de faire un commentaire jusqu’à la fin de la ligne, tout comme --.

SELECT * # Ceci est un commentaire
FROM table1; # Et celui-ci aussi
# Récupérer tous les clients
SELECT * FROM client;
# Filtrer par ville
SELECT * FROM client WHERE ville = 'Paris';
SGBD Support
MySQL Oui
MariaDB Oui
PostgreSQL Non
Oracle Non
SQL Server Non
SQLite Non

Remarque : L’utilisation de # est spécifique à MySQL/MariaDB. Si vous devez écrire du SQL portable, privilégiez -- ou /* */.


Le commentaire multi-lignes, délimité par /* et */, a l’avantage de pouvoir indiquer où commence et où se termine le commentaire. Il est donc possible de l’utiliser en plein milieu d’une requête SQL sans problème, et sur plusieurs lignes.

/* Ceci est un commentaire
sur plusieurs lignes */
SELECT * FROM table1;
SELECT * /* commentaire au milieu */ FROM table1;
/*
* ==========================================
* Requête : Récupérer les clients de Paris
* Auteur : Junior TSAFACK
* Date : 2026-08-08
* ==========================================
*/
SELECT id, prenom, nom, ville
FROM client
WHERE ville = 'Paris';
-- Exemple avec commentaire au milieu de la requête
SELECT id, /* identifiant client */
prenom,
nom,
ville
FROM client
WHERE ville = 'Paris'; /* Filtrer les Parisiens */
SGBD Support
MySQL Oui
MariaDB Oui
PostgreSQL Oui
Oracle Oui
SQL Server Oui
SQLite Oui

Bon à savoir : Les commentaires multi-lignes ne peuvent pas être imbriqués. /* /* commentaire */ */ ne fonctionnera pas correctement.


Astuce : utiliser les commentaires pour désactiver temporairement du code

Section titled “Astuce : utiliser les commentaires pour désactiver temporairement du code”

Les commentaires sont très utiles pour désactiver temporairement une partie d’une requête sans la supprimer définitivement :

SELECT *
FROM client
-- WHERE ville = 'Paris' -- Désactivé temporairement
ORDER BY nom;

Ou pour désactiver une clause entière :

SELECT *
FROM client
/*
WHERE ville = 'Paris'
AND actif = 1
*/
ORDER BY nom;

Mise en garde : bug potentiel des commentaires sur une ligne

Section titled “Mise en garde : bug potentiel des commentaires sur une ligne”

Dans certains contextes, si vous utilisez un système qui va supprimer les retours à la ligne, votre requête sera uniquement sur une ligne. Dans une telle situation, un commentaire effectué avec -- dans une requête peut donc créer un bug.

SELECT * -- tout sélectionner
FROM table1 -- dans la table "table1"
WHERE 1 = 1;

Même requête SQL sur une ligne (si les retours à la ligne sont supprimés) :

Section titled “Même requête SQL sur une ligne (si les retours à la ligne sont supprimés) :”
SELECT * -- tout sélectionner FROM table1 -- dans la table "table1" WHERE 1 = 1;

Problème : Le premier -- commente tout le reste de la ligne, y compris la clause FROM et WHERE. La requête ne fonctionnera plus.

Pour éviter ce problème, il est recommandé d’utiliser les commentaires multi-lignes (/* */) lorsque le code peut être minifié ou réécrit sur une seule ligne :

SELECT * /* tout sélectionner */
FROM table1 /* dans la table "table1" */
WHERE 1 = 1;

Si la requête est réduite à une seule ligne, elle restera valide :

SELECT * /* tout sélectionner */ FROM table1 /* dans la table "table1" */ WHERE 1 = 1;

Utilisation des commentaires pour les tests

Section titled “Utilisation des commentaires pour les tests”

Les commentaires peuvent également être utilisés pour tester rapidement des variations de requêtes :

-- Version avec filtre
SELECT * FROM client WHERE ville = 'Paris';
-- Version sans filtre (pour comparer les résultats)
-- SELECT * FROM client;

Commentaires dans les procédures stockées et fonctions

Section titled “Commentaires dans les procédures stockées et fonctions”

Dans les objets plus complexes (procédures stockées, fonctions, triggers), les commentaires sont essentiels pour documenter le comportement, les paramètres et les retours :

CREATE PROCEDURE get_clients_par_ville(
IN p_ville VARCHAR(100) -- Ville à filtrer
)
COMMENT 'Récupère la liste des clients d''une ville donnée'
BEGIN
-- Sélectionner les clients
SELECT id, prenom, nom, email
FROM client
WHERE ville = p_ville
ORDER BY nom, prenom;
END;

  1. Commentez le « pourquoi » plutôt que le « comment » : expliquez pourquoi une requête est écrite d’une certaine façon, pas ce qu’elle fait (le code est déjà explicite).

  2. Utilisez les commentaires pour structurer de longues requêtes en sections logiques :

/* ====================================
SECTION 1 : Récupération des données
==================================== */
SELECT ...
/* ====================================
SECTION 2 : Agrégation
==================================== */
GROUP BY ...
/* ====================================
SECTION 3 : Tri et filtrage
==================================== */
ORDER BY ...
  1. Documentez les modifications importantes : date, auteur, raison du changement.

  2. Évitez les commentaires inutiles qui répètent ce que le code exprime déjà.

  3. Préférez /* */ pour les commentaires longs et -- pour les commentaires courts.

  4. Soyez prudent avec -- si vos requêtes peuvent être minifiées ou réécrites sur une seule ligne.


Félicitations ! Vous avez terminé l’ensemble du cours SQL. Vous maîtrisez désormais les commandes essentielles pour interroger, manipuler, structurer et optimiser des bases de données relationnelles.

👉 Retour à l’accueil du cours SQL


Bonne continuation !
Junior TSAFACK – 08/08/2026