🧚 Écoute ! Beekeeper Studio est une interface de base de données rapide, moderne et open source Télécharger
24 juillet 2025 Par Matthew Rathbone

Bien gérer les valeurs NULL est un défi courant en SQL. MySQL propose plusieurs fonctions pour traiter les NULL, dont la fonction COALESCE. Dans cet article, on va voir comment utiliser COALESCE dans MySQL et découvrir ses applications pratiques.

La fonction COALESCE fait partie du solide ensemble de fonctions de MySQL pour gérer les valeurs NULL et manipuler les données.

Qu’est-ce que COALESCE ?

La fonction COALESCE renvoie la première valeur non NULL d’une liste. Elle est utile quand tu veux t’assurer de travailler avec de vraies données plutôt qu’avec des inconnues.

Syntaxe

COALESCE(val1, val2, ..., valN)
  • val1, val2, …, valN sont les valeurs à évaluer.
  • Le type de retour sera celui de la première valeur non NULL de la liste.

Utilisation de base de COALESCE

Commençons par un exemple simple pour voir comment fonctionne COALESCE :

SELECT COALESCE(NULL, NULL, 'Apples', 'Bananas') AS Result;

Résultat attendu

+--------+
| Result |
+--------+
| Apples |
+--------+

Dans cet exemple, COALESCE renvoie « Apples » car c’est la première valeur non NULL.

Gérer les NULL dans les données d’un tableau

Imagine que tu as un tableau employees avec des colonnes de contact facultatives :

CREATE TABLE employees (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100),
    email VARCHAR(100),
    phone VARCHAR(15)
);

INSERT INTO employees (name, email, phone) VALUES
('John Doe', 'john@example.com', NULL),
('Jane Smith', NULL, '123-456-7890'),
('Alice Johnson', NULL, NULL);

Requête avec COALESCE

Tu veux récupérer le moyen de contact préféré de chaque employé. Voici comment COALESCE peut t’aider :

SELECT 
    name, 
    COALESCE(email, phone, 'No Contact Available') AS contact_method
FROM 
    employees;

Résultat attendu

+---------------+--------------------+
| name          | contact_method     |
+---------------+--------------------+
| John Doe      | john@example.com   |
| Jane Smith    | 123-456-7890       |
| Alice Johnson | No Contact Available |
+---------------+--------------------+

Ici, la requête vérifie d’abord email, puis phone, et renvoie par défaut « No Contact Available » si les deux sont NULL.

Combiner avec d’autres fonctions SQL

COALESCE peut être combinée avec d’autres fonctions pour transformer les données de façon plus robuste. Prenons l’exemple suivant, qui utilise IFNULL avec COALESCE :

SELECT 
    id,
    name,
    COALESCE(email, phone, 'No Contact') AS contact,
    IFNULL(phone, 'N/A') AS phone_number
FROM 
    employees;

Résultat attendu

+----+---------------+--------------------+-------------+
| id | name          | contact            | phone_number|
+----+---------------+--------------------+-------------+
| 1  | John Doe      | john@example.com   | N/A         |
| 2  | Jane Smith    | 123-456-7890       | 123-456-7890|
| 3  | Alice Johnson | No Contact         | N/A         |
+----+---------------+--------------------+-------------+

Ici, COALESCE détermine le meilleur moyen de contact, tandis que IFNULL fournit une valeur par défaut spécifiquement pour la colonne phone_number.

Conclusion

Utiliser COALESCE dans MySQL est un moyen efficace de gérer les valeurs NULL, pour que tes requêtes produisent des résultats pertinents même quand certaines données manquent. Elle offre de la souplesse pour sélectionner la première valeur non NULL parmi plusieurs colonnes, et aide à préserver l’intégrité et l’exploitabilité des données.

Pour des sujets MySQL plus avancés, consulte nos guides sur le Full Outer Join dans MySQL et les techniques de soustraction dans MySQL. Apprends à exploiter les fonctions SQL pour créer des applications robustes et des analyses de données pertinentes.

Si tu travailles avec des requêtes MySQL complexes, Beekeeper Studio offre une interface intuitive pour tester et déboguer tes expressions COALESCE avec des résultats en temps réel.

Beekeeper Studio est une interface de base de données gratuite & open source

Le meilleur outil de requêtes & éditeur SQL que j’aie jamais utilisé. Il m’offre tout ce dont j’ai besoin pour gérer ma base de données. - ⭐⭐⭐⭐⭐ Mit

Beekeeper Studio est rapide, intuitif et facile à utiliser. Beekeeper prend en charge plein de bases de données et fonctionne parfaitement sous Windows, Mac et Linux.

La version Linux de Beekeeper est 100% complète : rien de bâclé, aucun compromis sur les fonctionnalités.

Ce que les utilisateurs disent de Beekeeper Studio

★★★★★
« Beekeeper Studio a complètement remplacé mon ancien workflow SQL. C’est rapide, intuitif, et ça rend le travail sur les bases de données à nouveau agréable. »
— Alex K., développeur de bases de données
★★★★★
« J’ai essayé beaucoup d’interfaces de bases de données, mais Beekeeper trouve l’équilibre parfait entre fonctionnalités et simplicité. Ça marche, tout simplement. »
— Sarah M., ingénieure Full Stack