Remplacer les valeurs NULL par d’autres valeurs dans MySQL

Lorsque vous effectuez une jointure (Left Join) ou une requête UNION, le SGBD place NULL là où il n’ya pas de correspondance dans l’ensemble. Dans ce tutoriel nous allons découvrir différents options permettant de remplacer NULL par 0 ou toute autre valeur à renseigner dans le SGBD MySQL.
 
 
Il y’a 3 options:

  • Fonction COALESCE
  • Fonction IFNULL
  • L’instruction CASE

 

Exemple:
SELECT Age FROM Clients;


 

Fonction COALESCE

COALESCE() renverra la première valeur non NULL de la liste, ou NULL s’il n’y a pas de valeur non NULL.

SELECT COALESCE(Age, '0') AS Age FROM Clients;


 

Fonction IFNULL

La fonction IFNULL peut également être utilisée pour remplacer les valeurs NULL par une autre valeur. Il vérifie simplement si la valeur de son premier argument est NULL, donc il sera remplacé par la valeur du deuxième argument.

SELECT IFNULL(Age, '0') AS Age FROM Clients;


Instruction CASE avec MySQL

L’instruction CASE

Une autre façon pour remplacer les valeurs NULL par une autre valeur, consiste à utiliser l’expression CASE:

SELECT 
    CASE 
        WHEN Age IS NOT NULL THEN Age 
        ELSE '0' 
    END AS Result
FROM Clients;


 
 
Les jointures en MySQL

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *