Please find below extract from Oracle Doc.
Internal Numeric Format
=============
Oracle stores numeric data in variable-length format. Each value is stored
in scientific notation, with one byte used to store the exponent and up to
20 bytes to store the mantissa. (The resulting value is limited to 38 digits
of precision.) Oracle does not store leading and trailing zeros. For
example, the number 412 is stored in a format similar to 4.12 x 102, with
one byte used to store the exponent (2) and two bytes used to store the
three significant digits of the mantissa (4, 1, 2).
Taking this into account, the column data size for a particular numeric data
value NUMBER (p), where p is the precision of a given value (scale has no
effect), can be calculated using the following formula:
1 byte (exponent)
+ FLOOR(p/2)+1 bytes (mantissa)
+ 1 byte (only for a negative number where the number of
significant digits is less than 38)
_______________________
number of bytes of data
=====================================
>From: "Colin McRae" <[Email Address Removed] "LazyDBA.com Discussion" <[Email Address Removed] Help - Size of number field
>Date: Fri, 29 Mar 2002 18:17:01 -0800
>
>We will have a teble which will store billions of records. We are very
>concerned with each byte that is taken up in this table. Can anyone provide
>input on how many bytes is taken up by the following. As well, if you have
>a
>pointer to documentation on actual space taken by the data types - I have
>been looking unsuccessfully in OTN on 8i.
>
>INT
>SMALLINT
>NUMBER(2)
>
>Thanks,
>Colin
_________________________________________________________________
Send and receive Hotmail on your mobile device: http://mobile.msn.com
Oracle LazyDBA home page