Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Bergabung dengan beberapa tabel mengembalikan nilai NULL

Itu karena null di kedua sisi operator penambahan akan menghasilkan hasil null . Anda dapat menggunakan ISNULL(LiabilityPremium, 0) Contoh:

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

atau Anda dapat menggunakan COALESCE bukannya ISNULL .

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

Sunting

Saya tidak yakin apakah ini kebetulan dengan kumpulan data kecil ini atau yang diharapkan tetapi jika selalu diharapkan bahwa @LiabilityPremium.LiabilityPremium atau @HiredPremium.LiabilityPremium akan selalu nol maka tidak perlu melakukan penambahan. Alih-alih gunakan COALESCE langsung pada 2 kolom tersebut.

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Ubah 'datetimeoffset' menjadi 'smalldatetime' di SQL Server (Contoh T-SQL)

  2. Semua yang harus Anda ketahui tentang SQL Server BERGABUNG

  3. Tetapkan Pasangan Kunci/Nilai dalam Konteks Sesi di SQL Server (sp_set_session_context)

  4. Cara Menemukan Nama Batasan di SQL Server

  5. 9 Tips Terbaik untuk Menyiapkan Cluster SQL Server Anda