8.6. Boolean Type

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