J'ai vu beaucoup de gens utiliser la fonction COALESCE à la place de ISNULL. Des recherches sur Internet, j'ai constaté que COALESCE est conforme à la norme ANSI. Nous avons donc un avantage: nous savons à quoi nous attendre lorsque nous l'utilisons. Cependant, ISNULL semble plus facile à lire puisqu'il semble plus clair ce que cela fait.
Je réalise aussi que ISNULL est un peu délicat, car il agit différemment sur différents serveurs de bases de données et dans différentes langues.
Dans mon esprit, tout cela se résume à un style et à des normes. Étant donné que le style est subjectif, existe-t-il une raison d'utiliser COALESCE par rapport à ISNULL (ou vice versa)? Plus précisément, existe-t-il un avantage de performance de l’un sur l’autre?
COALESCE
n’est pas intuitif;)
COALESCE
soit évaluée deux fois.