Sqlserver
 sql >> база данни >  >> RDS >> Sqlserver

Как да съедините много към много и да запазите същата обща сума

Мисля, че трябва да разделите и чрез 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.

Резултатът ще бъде:

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

Това ли ви трябва?




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. вмъкване на елементи от listbox в база данни на sql сървър

  2. SQL Server Concatenate GROUP BY

  3. Прозрачно криптиране на данни (TDE) в SQL Server в група за наличност на AlwaysOn в пример

  4. SQL заявка за получаване на набора от резултати само в две колони

  5. Как да съхранявам десетични стойности в SQL Server?