Ce petit post pour faire découvrir ou, je l’espère, redécouvrir, une instruction T-SQL : COALESCE. La définition de cette instruction est :
retourne la première valeur non nulle.
Quand je parle de cette instruction que j’utilise depuis 2001, on me dit toujours : ben t’as qu’à utiliser ISNULL…
Ce n’est pas faux car ISNULL fait la même chose mais uniquement entre 2 valeurs.
Récemment, je suis tombé sur ce code T-SQL, assez illisible :
ISNULL(matable.Col1, ISNULL(maTable.col2, ISNULL(DefTable.Col1, @ValeurParDefaut))
En "correction", j'ai proposé :
COALESCE(matable.Col1, maTable.col2, DefTable.Col1, @ValeurParDefaut)
Voila, ça fait la même chose mais c'est plus propre et plus simple à maintenir.