sql >> Databasteknik >  >> RDS >> Sqlserver

Att slå samman flera tabeller returnerar NULL-värdet

Det beror på att null på vardera sidan av additionsoperatorn ger resultatet null . Du kan använda ISNULL(LiabilityPremium, 0) Exempel:

ISNULL(l.LiabilityPremium,0) + ISNULL(h.LiabilityPremium,0) as LiabilityPremium

eller så kan du använda COALESCE istället för ISNULL .

COALESCE(l.LiabilityPremium,0) + COALESCE(h.LiabilityPremium,0) as LiabilityPremium

Redigera

Jag är inte säker på om detta är sammanträffande med denna lilla datamängd eller förväntat men om det förväntas alltid att antingen @LiabilityPremium.LiabilityPremium eller @HiredPremium.LiabilityPremium kommer alltid att vara null så finns det ingen anledning att utföra tillägg. Använd istället COALESCE direkt på dessa två kolumner.

COALESCE(l.LiabilityPremium, h.LiabilityPremium) as LiabilityPremium


  1. Resultatcache

  2. Så här fixar du:JSON_VALUE Returnerar NULL med långa strängar (SQL-server)

  3. Uppdatering av Oracle Table från Excel VBA Macro med ODBC-anslutning

  4. Laravel 5.2 - Använd en sträng som en anpassad primärnyckel för Eloquent Table blir 0