set verify off
set lines 400
col owner for a20
col table_name for a20
col tablespace_name for a15
col segment_created for a15
col last_analyzed for a13
select dtab.owner
,dtab.table_name
,dtab.tablespace_name
,dtab.segment_created
,dtab.last_analyzed
,dtab.initial_extent
,dtab.next_extent
,dtab.min_extents
,dtab.max_extents
,num_rows
,dtab.blocks
,dtab.empty_blocks
,dtab.num_freelist_blocks
,dtab.avg_space
,dtab.pct_free
,round((dtab.blocks*dtbs.block_size/1024/1024),2) "TOTAL_BLOCKS_SIZE_MB"
,round((dtab.num_rows*dtab.avg_row_len/1024/1024),2) "TOTAL_ROWS_SIZE_MB"
,round(((dtab.blocks*dtbs.block_size/1024/1024)-(dtab.num_rows*dtab.avg_row_len/1024/1024)),2) "AVG_FREE_SPACE_MB"
,(round(((dtab.blocks*dtbs.block_size/1024/1024)-(dtab.num_rows*dtab.avg_row_len/1024/1024)),2)/nullif(round(((dtab.blocks*dtbs.block_size/1024/1024)),2),0))*100 "AVG_FREE_SPACE_PCT"
from dba_tables dtab
,dba_tablespaces dtbs
where dtab.tablespace_name = dtbs.tablespace_name
and dtab.owner = upper('&1')
and dtab.table_name = upper('&2');
undefine 1
undefine 2