我的SQL导出字段上有一行,如果它与姓氏中的“AMA”完全匹配,我试图删除字段中的空白值。但是,当我使用当前代码导出文件时,没有“AMA”作为姓氏的名称被完全消隐。
,Max(
Orders.ShipFirstName
+ ' ' +
CASE Orders.ShipLastName
WHEN 'AMA' THEN ''
END
) As ShipFullName
现在,如果某人是“Ray Miller”,则ShipFullName
将作为空白返回。但如果他们的名字是“Ray AMA”,那么他们的名字就会以“Ray”的形式返回。我想要它,以便在姓氏字段中找不到AMA时返回“Ray Miller”。
答案 0 :(得分:3)
CASE Orders.ShipLastName
WHEN 'AMA' THEN ''
ELSE Orders.ShipLastName
END
答案 1 :(得分:3)
为了避免尾随空白,我会这样做:
max(
case
when Orders.ShipLastName = 'AMA' then Orders.ShipFirstName
else Orders.ShipFirstName + ' ' + Orders.ShipLastName
end
) as ShipFullName
答案 2 :(得分:0)
,Max(
Orders.ShipFirstName
+ ' ' + IF(Orders.ShipLastName = 'AMA', '', Orders.ShipLastName)
) As ShipFullName