Catégories :

Fonctions de données semi-structurées (extraction)

GET_IGNORE_CASE

Extrait une valeur de champ d’un objet ; renvoie NULL si l’un des arguments est NULL.

Note

Cette fonction est similaire à GET, mais applique une correspondance sans distinction de casse aux noms de champs.

Voir aussi :

GET

Syntaxe

GET_IGNORE_CASE( <object> , <field_name> )

GET_IGNORE_CASE( <v> , <field_name> )

Notes sur l’utilisation

  • Cette fonction renvoie la première correspondance exacte trouvée. Si la fonction ne trouve que des correspondances ambiguës (insensibles à la casse), elle renvoie la valeur de l’une des correspondances ; cependant, aucune garantie ne peut être donnée sur le nom de champ ambigu correspondant en premier.

  • GET_IGNORE_CASE est une fonction binaire qui peut être appelée des manières suivantes :

    • objet est une valeur OBJECT et nom_champ est une valeur de chaîne, qui peut être une constante ou une expression.

      Cette variation de GET_IGNORE_CASE extrait la valeur VARIANT du champ avec le nom fourni à partir de la valeur de l’objet. Si le champ n’est pas trouvé, NULL est renvoyé. Le nom du champ ne doit pas être une chaîne vide.

    • v est une valeur VARIANT et nom_champ est une valeur de chaîne, qui peut être une constante ou une expression.

      Fonctionne de la même façon que GET_IGNORE_CASE avec objet, mais vérifie en outre que v contient une valeur d’objet (et renvoie NULL si v ne contient pas d’objet).

Exemples

Extrayez une valeur de champ d’un objet. La fonction renvoie la valeur pour la correspondance exacte :

SELECT GET_IGNORE_CASE(TO_OBJECT(PARSE_JSON('{"aa":1, "aA":2, "Aa":3, "AA":4}')),'aA') as output;

+--------+
| OUTPUT |
|--------|
| 2      |
+--------+

Extrayez une valeur de champ d’un objet. La fonction ne trouve pas de correspondance exacte et renvoie donc l’une des correspondances ambiguës :

SELECT GET_IGNORE_CASE(TO_OBJECT(PARSE_JSON('{"aa":1, "aA":2, "Aa":3}')),'AA') as output;

+--------+
| OUTPUT |
|--------|
| 3      |
+--------+

Pour des exemples plus détaillés, voir Interrogation de données semi-structurées.