How to analyze size of table, index in Oracle

Check table size (remember to check last_analyzed_date)

1SELECT * FROM all_tables WHERE table_name LIKE 'AB%' 

Re-analyze table

1ANALYZE table TABLE_NAME estimate statisitics
1SELECT * FROM all_indexes WHERE table_name LIKE 'AB%'

Re-analyze index:

1ANALYZE index INDEX_NAME validate structure;

Check index size: (it only checks the last analyzed index)

1SELECT * FROM index_stats;

Others

  1. An index needs to be rebuilt, deleting or updating records will NOT free the index block
  2. Need DBA to check the block's definition.