ビット列とは 1 と 0 のビットが連続したものです。ビットマスクを格納したり顕在化するために使用されます。SQL のビットデータ型には BIT(x) データ型と BIT VARYING(x) データ型の2 つのデータ型があって、ここで x は正の整数です。
BIT 型のデータは厳密に x で表される長さに一致しなければなりません。この長さより長いか短いビット列を格納しようとするとエラーになります。BIT VARYING 型のデータは最大長 x までの可変長です。最大長を越えるビット列は受け付けません。長さ指定のない BIT データ型は BIT(1) データ型と同一で、長さ指定のない BIT VARYING データ型は無限長を意味します。
Note: PostgreSQL 7.2 以前に於いて BIT データ型データは右側がゼロ詰めされていました。SQL 標準に準拠するため変更されました。ゼロ詰めのビット列を実装するには結合演算子と substring 関数の組合せを使用します。
ビット列定数に関する構文に付いての情報は Section 1.1.2.2 参照ください。ビット論理演算子とビット列操作関数が用意されています。Chapter 4 を参照してください。