Catégories :

Fonctions d’expressions conditionnelles , Fonctions de données semi-structurées (prédicats de type)

IS_NULL_VALUE

Renvoie « true » si son argument VARIANT est une valeur JSON « null ».

Important

La valeur JSON null est distincte de la valeur SQL NULL.

Cette fonction renvoie vrai uniquement pour les valeurs JSON null et non pour les valeurs SQL NULL. La différence est indiquée dans les première et troisième lignes de l’exemple ci-dessous.

Une sous-colonne JSON manquante sera convertie en une valeur SQL NULL pour laquelle IS_NULL_VALUE renvoie false. La 4e colonne de l’exemple ci-dessous le montre.

Notez que cette fonction ne doit pas être confondue avec IS [ NOT ] NULL.

Voir aussi :

IS_<type_objet>

Syntaxe

IS_NULL_VALUE( <variant_expr> )

Renvoie

Le type de données de la valeur renvoyée est BOOLEAN.

Exemples

Ceci démontre la fonction 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                           |
+--------------+-------+--------------------+--------------------------------+