Calculating the average row length for rows in a table is done when you analyze the table (using dbms_stats, or automatically in Oracle 10g), but there are times when you need an ad-hoc way to calculate the average row length within an Oracle table, especially when doing capacity planning.
using dbms_lob.getlength(BLOB_COLUMN) to get an accurate average_row_length for rows with a BLOB column..









ad hoc query 即席查詢、突發查詢
ad hoc 即興、隨時出現.
Row header
For non cluster tables, the row header is 3 bytes. Each stored row has one row header. One byte is used to store flags, one byte to indicate if the row is locked (for example because it's updated but not commited), and one byte for the column count.
ref: http://www.dba-oracle.com/t_average_row_length.htm
http://www.adp-gmbh.ch/ora/concepts/db_block.html