1

誰かが累積合計とパーセンテージを取得するのを手伝ってくれますか? テーブル「機能」に3つのフィールドがあります

vertical|Defects(F)|Defects(NF)|

Billing | 193      |678
Provi   |200       |906
Billing |232       |111
Analyt  |67        |0
Provi   |121       |690

最終出力を

Vertical|Total Defects|Cumulative Defects|Cumulative%

Billing |1214         | 1214             |37.96%
Provi   |1917         | 3131             |97.90%
Analyt  |67           | 3198             |100.00%

約 300 万行あり、データは日々増加し続けていることに注意してください。

4

2 に答える 2

0

これは、誰かが同様の出力を得ようとするのに役立つかもしれません。目的の出力を得るために私がしたことは次のとおりです。ゴードンに感謝します。あなたの提案は実際にこれを可能にするのに役立ちました

with d as
      (SELECT ROW_NUMBER () OVER  
(ORDER BY SUM([DEFECTS(F)]+[DEFECTS(NF)]) asc) NUM,
VERTICAL,
SUM([DEFECTS(F)]+[DEFECTS(NF)]) AS [DEFECTS]
 FROM Capability
GROUP BY VERTICAL

      )
select left(vertical,5) as Vertical, defects as TotalDefects, cumDefects,
       cast(cumDefects as float) / fulldefects as DefectPercent
from (select d.*,
             (select sum(defects) from d d2 where d2.num <= d.num
             ) as cumdefects,
             SUM(defects) over () as fulldefects
      from d

     ) d
于 2013-06-11T14:40:02.767 に答える