I was poking around to see if you can come up with an estimate for free
space in a table... Not having much luck..
Best I found was the below, which is only anywhere near close on tables
that store stats on all columns -- which isn't normal.
select relname , relpages * 8192 as spaceused , relpages * (8192 - 20) - (reltuples * (
coalesce((selectsum(stawidth * (1 - stanullfrac)) from pg_statistic where
starelid= pg_class.oid) , 0) + 23) ) as freespace from pg_classwhere relkind in ('r');
--
Rod Taylor <rbt@rbt.ca>
PGP Key: http://www.rbt.ca/rbtpub.asc