I wrote a T-SQL Statement similar like this (the original one looks different but I want to give an easy example here):
SELECT first_name + CASE last_na
The problem is that null is not considered equal to itself, hence the clause never matches.
You need to check for null explicitly:
SELECT CASE WHEN last_name is NULL THEN first_name ELSE first_name + ' ' + last_name