By using db<>fiddle, you agree to license everything you submit by Creative Commons CC0.
WITH yourTable AS (
SELECT 'A' AS id, 12 AS val UNION ALL
SELECT 'B', 14 UNION ALL
SELECT 'C', 20 UNION ALL
SELECT 'D', 78 UNION ALL
SELECT 'E', 90 UNION ALL
SELECT 'F', 65
),
cte AS (
SELECT *, FLOOR((ROW_NUMBER() OVER (ORDER BY id) - 1) / 2) dvd
FROM yourTable
)
SELECT dvd + 1 AS grp, SUM(val) AS val_sum
FROM cte
GROUP BY dvd;
grp | val_sum |
---|---|
1 | 26 |
2 | 98 |
3 | 155 |