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 バイト使用 します。