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

SQL Server 2012:Претеглено средно изчисление

Изчисляването на WAM и WAIR е доста просто. Помислете за sumproduct() в Excel

Declare @YourTable table (SaleEventID  int,LID int,CurrentUPB money,[Interest Rate] money,RemainingMonths money)
Insert Into @YourTable values
(1,1,100000.00,6.100, 11.00),
(1,2,67000.00,6.200, 360.00),
(1,3,1400000.00,6.300, 240.00),
(1,4,500000.00,7.000, 100.00),
(2,5,1400000.00,7.100, 240.00),
(2,6,500000.00,7.000,100.00)


Select SaleEventID
      ,UPB  = sum(CurrentUPB)
      ,WAM  = sum(CurrentUPB*RemainingMonths)/sum(CurrentUPB)
      ,WAIR = sum(CurrentUPB*[Interest Rate] )/sum(CurrentUPB)
 From  @YourTable
 Where SaleEventID = @Event
 Group By SaleEventID

Връщане

SaleEventID UPB         WAM         WAIR
1           2067000.00  198.9453    6.4564
2           1900000.00  203.1578    7.0736


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Експортирайте данни от SQL Server в Excel и текстов файл чрез използване на пакет SSIS

  2. Искам да направя group_concat в SQL Server

  3. Как да създадете таблица от резултат от заявка за избор в SQL Server 2008

  4. Как да съхраня избраната колона в променлива?

  5. Как работи DENSE_RANK() в SQL Server