Je to proto, že null na obou stranách operátoru sčítání bude výsledek null . Můžete použít ISNULL(LiabilityPremium, 0) Příklad:
ISNULL(l.LiabilityPremium,0) + ISNULL(h.LiabilityPremium,0) as LiabilityPremium
nebo můžete použít COALESCE místo ISNULL .
COALESCE(l.LiabilityPremium,0) + COALESCE(h.LiabilityPremium,0) as LiabilityPremium
Upravit
Nejsem si jistý, zda je to shoda s tímto malým souborem dat nebo očekávané, ale pokud vždy se očekává, že buď @LiabilityPremium.LiabilityPremium nebo @HiredPremium.LiabilityPremium bude vždy null, pak není nutné provádět sčítání. Místo toho použijte COALESCE přímo na tyto 2 sloupce.
COALESCE(l.LiabilityPremium, h.LiabilityPremium) as LiabilityPremium