最佳答案
我写了一个类似这样的T-SQL语句(最初的看起来不同,但我想在这里给出一个简单的例子):
SELECT first_name +
CASE last_name WHEN null THEN 'Max' ELSE 'Peter' END AS Name
FROM dbo.person
此语句没有任何语法错误,但case-clause总是选择else部分-如果last_name为空也是如此。但是为什么呢?
我想做的是联合first_name和last_name,但如果last_name为空,整个名称变成空:
SELECT first_name +
CASE last_name WHEN null THEN '' ELSE ' ' + last_name END AS Name
FROM dbo.person
你知道问题出在哪里吗?