カテゴリ:

変換関数

TO_BOOLEAN

入力テキストまたは数値式をブール値に変換します。 NULL 入力の場合、出力は NULLです。

こちらもご参照ください。

TRY_TO_BOOLEAN

構文

TO_BOOLEAN( <text_or_numeric_expr> )
Copy

使用上の注意

  • テキスト式の場合、文字列は次のようになります。

    • 'true''t''yes''y''on''1' は TRUEを返します。

    • 'false''f''no''n''off''0' は FALSEを返します。

    • 他のすべての文字列はエラーを返します。

    文字列は大文字と小文字を区別しません。

  • 数値式の場合:

    • 0 は FALSEを返します。

    • ゼロ以外のすべての数値は TRUE を返します。

    • FLOAT データ型から変換する場合、「NaN」(数値ではない)や「INF」(無限大)などの数値以外の値は、エラーの原因になります。

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

テキスト文字列をブール値に変換します。

SELECT s, TO_BOOLEAN(s) FROM test_boolean;

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

数値をブール値に変換します。

SELECT n, TO_BOOLEAN(n) FROM test_boolean;

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