ヌル値のない複数のフィールドをチェックして、ヌル値のないマスターフィールドを作成しようとしています。以下のケースでは、null以外の値になるまでいくつかの "city"フィールドをチェックしようとしていますが、この文は期待どおりに動作していません。フィールド間で複数のヌル値を確認する
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"ステートメントを並べ替えると、最初のステートメントが最後のステートメントになり、2番目のステートメントが3番目のステートメントになるように言わなければならないと言いたいと思います。必要な結果が得られます。 –
b.BillingCityがNULLの場合、常にケース式の最初の条件になります。どのケースが「最も真実」であるかを見るために各ケースを評価するわけではありません。あなたはこの全体を並べ替える必要がありますので、一番上の最後のものを取得してください。 –
@SeanLange明確化のためにありがとう – hansolo