Hi Depesz,
--Here is better one for Oracle by sga/pga.
SELECT DECODE (GROUPING (nm), 1, 'total', nm) nm,
ROUND (SUM (val / 1024 / 1024)) MB
FROM (SELECT 'sga' nm, SUM (VALUE) val FROM v$sga
UNION ALL
SELECT 'pga', SUM (VALUE)
FROM v$sysstat
WHERE name = 'session pga memory')
GROUP BY ROLLUP (nm);
Sure, I will take up the task, will send you the script once it is ready, so you can bless it. :)
Regards
Nik