Size on Oracle

What is the size of an Oracle table? A very rough approximation is to multiply the number of rows with the average row length in bytes. Fortunately, Oracle directly provide you with such information. Take this query:

select 
table_name
, num_rows
, avg_row_len
,to_char((num_rows * avg_row_len)/1000000,'9999999D999','NLS_NUMERIC_CHARACTERS=''. ''') as sizeMB
, blocks  
from dba_tab_statistics where owner like 'ST%';

This can be verified in SQL Developer when you investigate the tablespaces: