PostgreSQL では、標準の SQL の型 boolean が提供されています。boolean は 2 つしかない値のどちらかを取ることができます。「真(true)」または「偽(false)」です。 第 3 の状態である「不明(unknown)」は SQL において null で表現されます。
「真(true)」状態に対する有効なリテラル値には次のものがあります。
| TRUE | 
| 't' | 
| 'true' | 
| 'y' | 
| 'yes' | 
| '1' | 
| FALSE | 
| 'f' | 
| 'false' | 
| 'n' | 
| 'no' | 
| '0' | 
Example 5-2. boolean を使って
CREATE TABLE test1 (a boolean, b text); INSERT INTO test1 VALUES (TRUE, 'sic est'); INSERT INTO test1 VALUES (FALSE, 'non est'); SELECT * FROM test1; a | b ---+--------- t | sic est f | non est SELECT * FROM test1 WHERE a; a | b ---+--------- t | sic est
Example 5-2 は t および f を使って boolean の値が出力されたことを示しています。
Tip: boolean の値は他のデータ型に直接キャストできません(例えば、CAST (boolval AS integer) は機能しません。方法としては CASE 文で解決できます。CASE WHEN boolval THEN 'value if true' ELSE 'value if false' END。Section 6.12 も参照して下さい。
boolean は保存に 1 バイト使用 します。