Yes, it is wordy and ugly. But you come to expect that of SQL.
And contrary to your assertion, nulls have a definite meaning and use in string data. I just wish that databases understood that empty strings also have their place. (In which case what you tried would have worked.)
Cheers,
Ben