我写了一个类似这样的T-SQL语句(原来的看起来不同,但我想在这里给出一个简单的例子):
SELECT first_name +
CASE last_name WHEN null THEN 'Max' ELSE 'Peter' END AS Name
FROM dbo.person
该语句没有任何语法错误,但 case 子句始终选择 ELSE 部分 - 即使 last_name 为 null。但为什么?
我想要做的是将first_name和last_name联合起来,但是如果last_name为空,则整个名称将变为空:
SELECT first_name +
CASE last_name WHEN null THEN '' ELSE ' ' + last_name END AS Name
FROM dbo.person
你知道问题出在哪里吗?
CASE WHEN last_name IS NULL THEN '' ELSE ' '+last_name END
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)