尝试检查多个字段的空值以创建不含空值的主字段。在下面的情况下,我试图检查几个“城市”字段,直到我得到一个非空值,但这种说法不按预期工作。检查跨域的多个空值
CASE
WHEN b.BillingCity IS NULL THEN b.ShippingCity
WHEN b.BillingCity IS NULL AND b.ShippingCity IS NULL THEN c.BillingCity
WHEN b.BillingCity IS NULL AND b.ShippingCity IS NULL AND c.BillingCity IS NULL THEN b.ES_APP__ESCity__c
WHEN b.BillingCity IS NULL AND b.ShippingCity IS NULL AND c.BillingCity IS NULL AND b.ES_APP__ESCity__c IS NULL THEN b.Avn_City__c
ELSE Null
END
As MasterCity
我认为最好的答案是使用COALESCE如下面的答复中提到。但我认为值得一提的是,如果您对“WHEN”语句重新排序,以便第一个是最后一个,第二个将是第三个......等等,那么它会得到您需要的结果。 –
请注意,如果b.BillingCity为NULL,它将始终转到您的案例表达式中的第一个条件。它不评估每个案例,看哪一个是“最真实”的。你将不得不重新排列这整个事情,所以得到最后一个在顶部等。 –
@SeanLange谢谢你的澄清 – hansolo