PostgreSQL provides the
standard SQL type boolean;
see Table 8-19.
The boolean type can have several states:
"true", "false", and a third state,
"unknown", which is represented by the
SQL null value.
Table 8-19. Boolean Data Type
| Name | Storage Size | Description |
|---|
| boolean | 1 byte | state of true or false |
Valid literal values for the "true" state are:
| TRUE |
| 't' |
| 'true' |
| 'y' |
| 'yes' |
| 'on' |
| '1' |
For the
"false" state, the following values can be
used:
| FALSE |
| 'f' |
| 'false' |
| 'n' |
| 'no' |
| 'off' |
| '0' |
Leading or trailing whitespace is ignored, and case does not matter.
The key words
TRUE and
FALSE are the preferred
(
SQL-compliant) usage.
Example 8-2 shows that
boolean values are output using the letters
t and f.
Example 8-2. Using the boolean Type
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