Kategorien:

Konvertierungsfunktionen

TO_BOOLEAN

Konvertiert den eingegebenen Text oder numerischen Ausdruck in einen BOOLEAN-Wert.

Siehe auch:

TRY_TO_BOOLEAN

Syntax

TO_BOOLEAN( <string_or_numeric_expr> )
Copy

Argumente

string_or_numeric_expr

Ein Zeichenfolgenausdruck oder numerischer Ausdruck, der einen BOOLEAN-Wert ergeben kann.

Rückgabewerte

Gibt einen BOOLEAN Wert oder NULL zurück.

  • Gibt TRUE zurück, wenn string_or_numeric_expr TRUE ergibt.

  • Gibt FALSE zurück, wenn string_or_numeric_expr FALSE ergibt.

  • Wenn die Eingabe NULL ist, wird NULL ohne Meldung eines Fehlers zurückgegeben.

Nutzungshinweise

  • Für einen Zeichenfolgenausdruck:

    • 'true', 't', 'yes', 'y', 'on', '1' geben TRUE zurück.

    • 'false', 'f', 'no', 'n', 'off', '0' geben FALSE zurück.

    • Alle anderen Zeichenfolgen geben einen Fehler zurück.

    Bei der Auswertung der Zeichenfolgen wird die Groß-/Kleinschreibung berücksichtigt.

  • Bei einem numerischen Ausdruck gilt:

    • 0 gibt FALSE zurück.

    • Alle numerischen Nicht-Null-Werte geben TRUE zurück.

    • Bei der Konvertierung vom Datentyp FLOAT geben nicht-numerische Werte wie NaN (keine Zahl) und INF (Unendlichkeit) einen Fehler zurück.

Beispiele

Die folgenden Beispiele verwenden die Funktion TO_BOOLEAN.

Erstellen Sie eine Tabelle, und fügen Sie Daten ein:

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 |
+-------+------+------+

Konvertieren einer Textzeichenfolge in einen BOOLEAN Wert:

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

Konvertieren einer Zahl in einen BOOLEAN Wert:

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