sql >> データベース >  >> RDS >> Sqlserver

複数のテーブルを結合するとNULL値が返されます

    これは、null 加算演算子のいずれかの側で、nullの結果が生成されます 。 ISNULL(LiabilityPremium, 0)を使用できます 例:

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

    または、COALESCEを使用できます ISNULLの代わりに 。

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

    編集

    これがこの小さなデータセットと一致するのか、それとも予想されるのかはわかりませんが、もし @LiabilityPremium.LiabilityPremiumのいずれかが常に期待されます または@HiredPremium.LiabilityPremium 常にnullになるため、加算を実行する必要はありません。代わりにCOALESCEを使用してください これらの2つの列に直接。

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


    1. Oracleの値のリストから選択するにはどうすればよいですか

    2. SQL-特定の値を挿入するステートメントを検索します

    3. SQLServerのAlwaysOn可用性グループのトラブルシューティング

    4. MySQLのデータファイルのロードでアクセスが拒否されました