私は次のような T-SQL ステートメントを作成しました (元のステートメントは異なっていますが、ここでは簡単な例を示します)。
SELECT first_name +
CASE last_name WHEN null THEN 'Max' ELSE 'Peter' END AS Name
FROM dbo.person
このステートメントには構文エラーはありませんが、case 節では last_name が null の場合でも常に ELSE 部分が選択されます。なぜでしょうか?
私がやりたいのは first_name と last_name を結合することですが、last_name が null の場合、名前全体が null になります。
SELECT first_name +
CASE last_name WHEN null THEN '' ELSE ' ' + last_name END AS Name
FROM dbo.person
どこに問題があるかご存知ですか?
ベストアンサー1
CASE WHEN last_name IS NULL THEN '' ELSE ' '+last_name END