如果原始值与任何when_表达式都不匹配,则返回原始值

Jac*_*ole 2 sql t-sql sql-server case-when

我的 SQL 导出字段上有一行,并且我试图删除字段中返回的空白值(如果它与姓氏中的“AMA”完全匹配)。但是,当我使用当前代码导出文件时,姓氏不带“AMA”的名称将被完全删除。

,Max(
    Orders.ShipFirstName
    + ' ' +  
        CASE Orders.ShipLastName
            WHEN 'AMA' THEN ''
        END
) As ShipFullName
Run Code Online (Sandbox Code Playgroud)

现在,如果某人是“Ray Miller”,ShipFullName将返回空白。但如果他们的名字是“Ray AMA”,那么他们的名字将返回为“Ray”。我想要它,以便当在姓氏字段中找不到 AMA 时返回“Ray Miller”。

aba*_*hev 6

CASE Orders.ShipLastName
    WHEN 'AMA' THEN ''
    ELSE Orders.ShipLastName
END
Run Code Online (Sandbox Code Playgroud)