Catégories :

Fonctions de conversion

TO_BOOLEAN

Convertit le texte d’entrée ou l’expression numérique en valeur booléenne. Pour une entrée NULL, la sortie est NULL.

Voir aussi :

TRY_TO_BOOLEAN

Syntaxe

TO_BOOLEAN( <text_or_numeric_expr> )
Copy

Notes sur l’utilisation

  • Pour une expression de texte, la chaîne doit être :

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

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

    • Toutes les autres chaînes renvoient une erreur.

    Les chaînes ne sont pas sensibles à la casse.

  • Pour une expression numérique :

    • 0 renvoie FALSE.

    • Toutes les valeurs numériques non nulles renvoient TRUE.

    • Lors de la conversion à partir du type de données FLOAT, les valeurs non numériques, telles que “NaN” (pas un nombre) et “INF” (infini), provoquent une erreur.

Exemples

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

Convertissez une chaîne de texte en booléen :

SELECT s, TO_BOOLEAN(s) FROM test_boolean;

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

Convertissez un nombre en booléen :

SELECT n, TO_BOOLEAN(n) FROM test_boolean;

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