Categorias:

Funções de conversão

TO_BOOLEAN

Converte o texto de entrada ou expressão numérica em um valor booleano. Para a entrada NULL, a saída será NULL.

Consulte também:

TRY_TO_BOOLEAN

Sintaxe

TO_BOOLEAN( <text_or_numeric_expr> )
Copy

Notas de uso

  • Para uma expressão de texto, a cadeia de caracteres deve ser:

    • 'true', 't', 'yes', 'y', 'on', '1' retornam TRUE.

    • 'false', 'f', 'no', 'n', 'off', '0' retornam FALSE.

    • Todas as outras cadeias de caracteres retornam um erro.

    As cadeias de caracteres distinguem letras maiúsculas de minúsculas.

  • Para uma expressão numérica:

    • 0 retorna FALSE.

    • Todos os valores numéricos diferentes de zero retornam TRUE.

    • Ao converter do tipo de dados FLOAT, valores não numéricos, tais como ‘NaN’ (não é um número) e ‘INF’ (infinito), causam um erro.

Exemplos

CREATE OR REPLACE TABLE test_boolean(
   b BOOLEAN,
   n NUMBER,
   s STRING);

INSERT INTO test_boolean VALUES (true, 1, 'yes'), (false, 0, 'no'), (null, null, null);

SELECT * FROM test_boolean;

+-------+------+------+
| B     |    N | S    |
|-------+------+------|
| True  |    1 | yes  |
| False |    0 | no   |
| NULL  | NULL | NULL |
+-------+------+------+
Copy

Converter uma cadeia de caracteres de texto em booleano:

SELECT s, TO_BOOLEAN(s) FROM test_boolean;

+------+---------------+
| S    | TO_BOOLEAN(S) |
|------+---------------|
| yes  | True          |
| no   | False         |
| NULL | NULL          |
+------+---------------+
Copy

Converter um número em booleano:

SELECT n, TO_BOOLEAN(n) FROM test_boolean;

+------+---------------+
|    N | TO_BOOLEAN(N) |
|------+---------------|
|    1 | True          |
|    0 | False         |
| NULL | NULL          |
+------+---------------+
Copy