non ho capito in pieno la parte relativa alla somme delle somme parziali, avessi fatto un esempio pratico magari si capiva meglio….
Segui qui sotto se intendevi altro fai sapere...
data la tabella :

ottengo questo :

da questa query :

con questo predicato sql :
SELECT
t.id_ratei,
t.rateo,
t.daData,
t.aData,
t.capitale,
t4.capitale as subTot,
t10.totRat
FROM
(SELECT Sum(tabella3.capitale) AS totRat, tabella3.rateo FROM tabella3 GROUP BY tabella3.rateo) AS T10
INNER JOIN
(tabella3 AS T LEFT JOIN (SELECT t1.id_ratei, t1.rateo, t1.daData, t1.aData, t1.capitale FROM tabella3 AS T1 WHERE t1.id_ratei=(select max(t2.id_ratei) as MR from tabella3 as T2 where t2.rateo=t1.rateo)) AS T4
ON
t4.id_ratei=t.id_ratei)
ON
t.rateo=t10.rateo;
ciao, Sandro.
oopps…..
se ti servono anche i giorni….

SELECT
t.id_ratei,
t.rateo,
t.daData,
t.aData,
t.capitale,
t4.capitale AS subTot,
t10. totRat,
[t.adata]-[t.dadata]+1 AS giorni
FROM
(SELECT Sum(tabella3.capitale) AS totRat, tabella3.rateo FROM tabella3 GROUP BY tabella3.rateo) AS T10
INNER JOIN
(tabella3 AS T LEFT JOIN (SELECT t1.id_ratei, t1.rateo, t1.daData, t1.aData, t1.capitale FROM tabella3 AS T1 WHERE t1.id_ratei=(select max(t2.id_ratei) as MR from tabella3 as T2 where t2.rateo=t1.rateo)) AS T4
ON
t4.id_ratei=t.id_ratei)
ON
t.rateo=t10.rateo;
anche questa potrebbe essere interessante…. :

SELECT
t.id_ratei,
t.rateo,
t.daData,
t.aData,
t.capitale,
t4.capitale AS subTot,
[t.adata]-[t.dadata]+1 AS giorni,
(select sum(t11.capitale) as rS from tabella3 as T11 where t11.id_ratei<=T.id_ratei and t11.rateo=T.rateo ) AS rSum,
(select sum(t11.capitale) as rS from tabella3 as T11 where t11.id_ratei<=T.id_ratei ) AS rSumTot
FROM
tabella3 AS T
LEFT JOIN
(SELECT t1.id_ratei, t1.rateo, t1.daData, t1.aData, t1.capitale FROM tabella3 AS T1 WHERE t1.id_ratei=(select max(t2.id_ratei) as MR from tabella3 as T2 where t2.rateo=t1.rateo)) AS T4
ON
t4.id_ratei=t.id_ratei