J'ai écrit une déclaration T-SQL similaire à celle-ci (l'original est différent mais je veux donner un exemple simple ici) :
SELECT first_name +
CASE last_name WHEN null THEN 'Max' ELSE 'Peter' END AS Name
FROM dbo.person
Cette déclaration ne comporte aucune erreur de syntaxe, mais la clause de cas choisit toujours la partie ELSE, même si le nom de famille est nul. Mais pourquoi ?
Ce que je veux faire, c'est réunir le prénom et le nom, mais si le nom est nul, le nom entier devient nul :
SELECT first_name +
CASE last_name WHEN null THEN '' ELSE ' ' + last_name END AS Name
FROM dbo.person
Savez-vous où est le problème ?