Промежуточная сумма и процент, рассчитанные для конкретной строки в сводной таблице - PullRequest
0 голосов
/ 07 сентября 2018

Я написал эту хранимую процедуру, которая возвращает данные полностью, как и ожидалось, в Excel-подобной таблице. Теперь я хотел бы добавить 2 столбца:

  1. Сумма значений всех предыдущих столбцов
  2. Рассчитать процент от этой суммы, рассчитанный на сумму последней строки

Я пытался вычислить напрямую при первом выборе, но никак не мог.

Любое предложение приветствуется.

Спасибо.

CREATE PROCEDURE proc_presenze
(
    @month VARCHAR(6),
    @group INT
) 
AS 
BEGIN

 SELECT FINCode,  Nachname, Vorname, Gruppe, [1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], [16], [17], [18], [19], [20], [21], [22], [23], [24], [25], [26], [27], [28], [29], [30], [31]   
FROM  (SELECT        BK_Athleten.FINCode, BK_Athleten.Nachname, BK_Athleten.Vorname, BK_Athleten.Gruppe, RIGHT(BK_Einheiten.Datum, 2) AS Day, BK_Anwesend.IDPres
FROM            BK_Anwesend INNER JOIN
                         BK_Athleten ON BK_Anwesend.FINCode = BK_Athleten.FINCode INNER JOIN
                         BK_Einheiten ON BK_Anwesend.IDEinheit = BK_Einheiten.IDEinheit
                         WHERE BK_Athleten.Gruppe = @group AND LEFT(BK_Einheiten.Datum, 6) = @month) AS PVT

PIVOT  
(  
Count(IDPres) 
FOR Day IN ([1], [2], [3], [4], [5], [6], [7], [8], [9], [10], [11], [12], [13], [14], [15], 
[16], [17], [18], [19], [20], [21], [22], [23], [24], [25], [26], [27], [28], [29], [30], [31] )  
) AS PRT

END
...