布尔类型
From PostgreSQL 中文维基, PostgreSQL 中文站, PostgreSQL 中国社区, PostgreSQL Chinese community
[编辑] 布尔类型
PostgreSQL 支持标准的 SQL boolean 数据类型。 boolean 只能有两个状态之一: '真'('True') 或 '假'('False')。 第三种状态,'未知'('Unknow'),用 SQL空状态表示。
"真"值的有效文本值是:
TRUE 't' 'true' 'y' 'yes' '1'
而对于"假"而言,你可以使用下面这些:
FALSE 'f' 'false' 'n' 'no' '0'
使用TRUE和FALSE 这样的字眼比较好(也是SQL兼容的用法)。
例 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
例 8-2 显示了使用字母 t 和 f 输出 boolean 数值的例子。
- 技巧:boolean 类型的数值不能直接转换成其它 类型(也就是说, CAST (boolval AS integer) 是不会起作用的)。你可以用 CASE 表达式实现这个目的: CASE WHEN boolval THEN 'value if true' ELSE'value if false' END。见 Section 9.13。
bool 使用1字节存储空间。
