Kategorien:

Funktionen für bedingte Ausdrücke , Semistrukturierte Datenfunktionen (Typprädikate)

IS_NULL_VALUE

Gibt „true“ zurück, wenn das VARIANT-Argument ein JSON-Null-Wert ist.

Wichtig

Der JSON-Nullwert unterscheidet sich vom Wert SQL NULL.

Diese Funktion gibt nur für JSON-Nullwerte und nicht für SQL NULL-Werte den Wert true zurück. Der Unterschied ist in der ersten und dritten Zeile des folgenden Beispiels dargestellt.

Eine fehlende JSON-Unterspalte wird in einen SQL NULL-Wert konvertiert, für den IS_NULL_VALUE den Wert „false“ zurückgibt. Die 4. Spalte im folgenden Beispiel zeigt dies.

Beachten Sie, dass diese Funktion nicht mit IS [ NOT ] NULL verwechselt werden sollte.

Siehe auch:

IS_<Objekttyp>

Syntax

IS_NULL_VALUE( <variant_expr> )

Rückgabewerte

Der Datentyp des zurückgegebenen Werts ist BOOLEAN.

Beispiele

Dies ist ein Beispiel für die Funktion IS_NULL_VALUE:

SELECT v, v:a, IS_NULL_VALUE(v:a), IS_NULL_VALUE(v:no_such_field)
    FROM
        (SELECT parse_json(column1) AS v
         FROM VALUES
             ('{"a": null}'),
             ('{"a": "foo"}'),
             (NULL)
        );
+--------------+-------+--------------------+--------------------------------+
| V            | V:A   | IS_NULL_VALUE(V:A) | IS_NULL_VALUE(V:NO_SUCH_FIELD) |
|--------------+-------+--------------------+--------------------------------|
| {            | null  | True               | NULL                           |
|   "a": null  |       |                    |                                |
| }            |       |                    |                                |
| {            | "foo" | False              | NULL                           |
|   "a": "foo" |       |                    |                                |
| }            |       |                    |                                |
| NULL         | NULL  | NULL               | NULL                           |
+--------------+-------+--------------------+--------------------------------+