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

Bagaimana cara menggabungkan banyak ke banyak dan mempertahankan jumlah total yang sama

Saya pikir Anda juga harus mempartisi dengan cte1.AccidentYear, cte1.AccidentMonth .

CASE
WHEN ROW_NUMBER() OVER (PARTITION BY cte1.QuoteID, cte1.PolicyNumbe  cte2.LossYear, cte2.AccidentMonth ORDER BY (SELECT 0))=1 THEN cte1.PaidLosses 
ELSE 0
END  as PaidLosses.

Hasilnya adalah:

QuoteId PolicyNumber    AccidentYear    AccidentMonth   ClassCode   

PaidLosses
191289  PACA1001776-0   2015    4   50228   26657
191289  PACA1001776-0   2015    4   67228   0
191289  PACA1001776-0   2015    9   50228   16718
191289  PACA1001776-0   2015    9   67228   0
191289  PACA1001776-0   2016    1   50228   3445
191289  PACA1001776-0   2016    1   67228   0

Apakah itu yang Anda butuhkan?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Cara Menghapus Akun Email Database dari Profil di SQL Server (T-SQL)

  2. Cara mengembalikan XML dari SQL Server 2008 yang terstruktur dengan beberapa pilihan yang berbagi induk yang sama

  3. Memanipulasi struktur tabel

  4. Menyimpan data XML di SQL Server

  5. Cara berkinerja untuk mendapatkan nilai maksimum dari total berjalan di TSQL