Concaténer deux dates quand l'une est NULL
Bonjour à tous,
Ma table contient deux dates birth_date et death_date. A partir de ces deux dates je veux obtenir quelque chose comme "13/03/1908 - 16/12/2008" dans live_dates. Tout fonctionne lorsque les deux dates sont sont renseignées.
Lorsque une des deux dates est nulle, je voudrais obtenir quelque chose comme "13/03/1908 - " ou " - 16/12/2008"
Au lieu d'une chaîne incomplète la requête me retourne NULL pour live_dates comme à la deuxième et la quatrième ligne de l'exemple de résultat.
Voici ma requête:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| SELECT id, gender,
CONCAT(
COALESCE(last_name, ''), ' ',
COALESCE(first_name, ''), ', ',
COALESCE (middle_name, '')
) AS full_name,
birth_date, death_date,
CONCAT(
DATE_FORMAT(COALESCE(birth_date, ''), '%d/%m/%Y'),
' - ',
DATE_FORMAT(COALESCE(death_date, ''), '%d/%m/%Y')
) AS live_dates
FROM dat_persons
WHERE id_abo = 1 |
Voici un exemple de résultat:
Code:
1 2 3 4 5 6
|
17;F,Carpinter Victoria;1908-03-13;2008-12-16;13/03/1908 - 16/12/2008
18;M;Démo Amédée;Jules Aristide;NULL;1950-03-12;NULL
4;M;Démo Henri;Auguste;1921-08-24;1998-05-15;24/08/1921 - 15/05/1998
5;M;Démo Jean-Pierre, Henri;1948-02-23;NULL;NULL |