计算sql中的Sum之和

时间:2016-12-27 05:55:50

标签: sql

在SQL中,当我想计算一个列的总和也是基于分组的Sum时,总值不正确。我想要计算Mand的总和,即Sum(Qty),但最终的结果不是正确的。

Select Sum(Mand) from (Select TrackingFactor1 As Number ,SUM(Qty) As Mand from(
  Select  t.TrackingFactor1,SUM(
                          CASE 
                               WHEN Direction = 1 THEN t.MajorUnitQuantity
                               WHEN Direction = 2 THEN -t.MajorUnitQuantity
                               ELSE 0
                          END
                      ) AS Qty,
                      ROW_NUMBER() OVER(ORDER BY i.Date, i.VoucherCreationDate, v.InventoryVoucherID, i.InventoryVoucherItemID) AS 
                      RowNumber
                      from LGS3.InventoryVoucher AS v
                      INNER JOIN LGS3.InventoryVoucherItem i  ON  v.InventoryVoucherID = I.InventoryVoucherRef
                      LEFT OUTER JOIN LGS3.InventoryVoucherItemTrackingFactor t  ON  i.InventoryVoucherItemID = t.InventoryVoucherItemRef
                      GROUP BY
                      v.InventoryVoucherID,
                      v.Number,
                      i.Date,
                      i.VoucherCreationDate,
                      i.InventoryVoucherItemID,
                       i.CounterpartEntityText,
                      t.TrackingFactor1 ,
                      v.FiscalYearRef
                      )As A
                    group  by TrackingFactor1 
                    Having SUM(Qty)>0) As AA

0 个答案:

没有答案