8.6. 布爾類型

PostgreSQL 支援標準的 SQL boolean 資料類型。 boolean 只能有兩個狀態之一: '真'('True') 或 '假'('False')。 第三種狀態,'未知'('Unknow'),用 SQL空狀態資料表示。

"真"值的有效文本值是:

TRUE
't'
'true'
'y'
'yes'
'1'

而對於"假"而言,您可以使用下面這些:

FALSE
'f'
'false'
'n'
'no'
'0'

使用TRUEFALSE 這樣的字眼比較好(也是SQL兼容的用法)。

Example 8-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 8-2 顯示了使用字母 tf 輸出 boolean 數值的例子。

技巧: boolean 類型的數值不能直接轉換成其它 類型(也就是說, CAST (boolval AS integer) 是不會起作用的)。您可以用 CASE 資料表達式實現這個目的: CASE WHEN boolval THEN 'value if true' ELSE'value if false' END。見 Section 9.13

bool 使用1字元儲存空間。