Thread: specifics about BIT(n) types

specifics about BIT(n) types

From
Dennis Gearon
Date:
please CC me as I'm on silent or digest.
--------------------------------------------------
I know these questions have been asked, and once by me. I can't find it
in the archives or in the documentation.

1/ Are the bits in BIT(n) types stored as 1 bit per '0/1' or as one BYTE
per '0/1' ?
2/ What is the RANGE of the number of bits storable?
3/ What kind of speed comparisons are there between using BIT(n) tyeps
and using multiple columns of INT4/8 values?

    For example:

    SELECT bit_varying_128_A & bit_varying_128_B FROM some_table;
vs
    SELECT int8_A & int8_B & int8_C & int8_C FROM some_other_table;


I sure would love to see the answers to these questions put in the
BIT(n)  section of the USER MANUAL, section 5.9.

Re: specifics about BIT(n) types

From
Peter Eisentraut
Date:
Dennis Gearon wrote:
> 1/ Are the bits in BIT(n) types stored as 1 bit per '0/1' or as one
> BYTE per '0/1' ?

1 bit

> 2/ What is the RANGE of the number of bits storable?

1 to about 8*10^9 should be possible (although perhaps not thoroughly
tested by many people)

> 3/ What kind of speed comparisons are there between using BIT(n)
> tyeps and using multiple columns of INT4/8 values?

There should not be any noticeable difference.