5.6. Tipo booleano

O PostgreSQL disponibiliza o tipo boolean padrão do SQL. O tipo boolean pode possuir apenas dois estados: "verdade" ou "falso". O terceiro estado, "desconhecido", é representado pelo valor nulo do SQL.

Os valores literais válidos para o estado "verdade" são:

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

Para o estado "falso" os seguintes valores podem ser utilizados:

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

A utilização das palavras chave TRUE e FALSE é preferida (e em conformidade com o padrão SQL).

Exemplo 5-2. Utilização do tipo boolean

CREATE TABLE teste1 (a boolean, b text);
INSERT INTO teste1 VALUES (TRUE, 'sic est');
INSERT INTO teste1 VALUES (FALSE, 'non est');
SELECT * FROM teste1;
 a |    b
---+---------
 t | sic est
 f | non est

SELECT * FROM teste1 WHERE a;
 a |    b
---+---------
 t | sic est

O Exemplo 5-2 mostra que os valores do tipo boolean são exibidos utilizando as letras t e f.

Dica: Os valores do tipo boolean não podem ser transformados diretamente em outros tipos (por exemplo, CAST (valor_booleano AS integer) não funciona). Isto pode ser obtido utilizando a expressão CASE: CASE WHEN valor_booleano THEN 'valor se for verdade' ELSE 'valor se for falso' END. Veja também a Seção 6.12.

O tipo boolean utiliza 1 byte para seu armazenamento.