Categories:

Conversion functions

TO_BOOLEAN

Converts the input text or numeric expression to a BOOLEAN value.

See also:

TRY_TO_BOOLEAN

Syntax

TO_BOOLEAN( <string_or_numeric_expr> ) 
Copy

Arguments

string_or_numeric_expr

A string expression or numeric expression that can be evaluated to a BOOLEAN value.

Returns

Returns a BOOLEAN value or NULL.

  • Returns TRUE if string_or_numeric_expr evaluates to TRUE.

  • Returns FALSE if string_or_numeric_expr evaluates to FALSE.

  • If the input is NULL, returns NULL without reporting an error.

Usage notes

  • For a string expression:

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

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

    • All other strings return an error.

    The evaluations of the strings are case-insensitive.

  • For a numeric expression:

    • 0 returns FALSE.

    • All non-zero numeric values return TRUE.

    • When converting from the FLOAT data type, non-numeric values, such as NaN (not a number) and INF (infinity), return an error.

Examples

The following examples use the TO_BOOLEAN function.

Create a table and insert data:

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; 
Copy
+-------+------+------+ | B | N | S | |-------+------+------| | True | 1 | yes | | False | 0 | no | | NULL | NULL | NULL | +-------+------+------+ 

Convert a text string to a BOOLEAN value:

SELECT s, TO_BOOLEAN(s) FROM test_boolean; 
Copy
+------+---------------+ | S | TO_BOOLEAN(S) | |------+---------------| | yes | True | | no | False | | NULL | NULL | +------+---------------+ 

Convert a number to a BOOLEAN value:

SELECT n, TO_BOOLEAN(n) FROM test_boolean; 
Copy
+------+---------------+ | N | TO_BOOLEAN(N) | |------+---------------| | 1 | True | | 0 | False | | NULL | NULL | +------+---------------+