I have a kind of solution that works with Oracle 9i:
select Field1,Field2,sum(Field2) from Table1
group by rollup(Field1,Field2)
having grouping(Field1)=grouping(Field2);
ROLLUP, used in GROUP BY clauses, makes Oracle compute and return additional rows with the sum at different levels...