Catégories :

Fonctions de données semi-structurées (tableau/objet)

OBJECT_KEYS

Renvoie un tableau contenant la liste des clés dans l’objet d’entrée.

Syntaxe

OBJECT_KEYS( <object> )

Arguments

objet

La valeur pour laquelle vous souhaitez les clés. La valeur d’entrée doit être un OBJECT ou un VARIANT qui contient une valeur de type OBJECT.

Renvoie

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

Exemples

L’exemple suivant montre que OBJECT_KEYS fonctionne à la fois avec un OBJECT et un VARIANT qui contient une valeur de type OBJECT.

Créez une table contenant des colonnes de types OBJECT et VARIANT.

CREATE TABLE objects_1 (id INTEGER, object1 OBJECT, variant1 VARIANT);

Valeurs INSERT :

INSERT INTO objects_1 (id, object1, variant1) 
  SELECT
    1,
    OBJECT_CONSTRUCT('a', 1, 'b', 2, 'c', 3),
    TO_VARIANT(OBJECT_CONSTRUCT('a', 1, 'b', 2, 'c', 3))
    ;

Récupérez les clés du OBJECT et du VARIANT :

SELECT OBJECT_KEYS(object1), OBJECT_KEYS(variant1) 
    FROM objects_1
    ORDER BY id;
+----------------------+-----------------------+
| OBJECT_KEYS(OBJECT1) | OBJECT_KEYS(VARIANT1) |
|----------------------+-----------------------|
| [                    | [                     |
|   "a",               |   "a",                |
|   "b",               |   "b",                |
|   "c"                |   "c"                 |
| ]                    | ]                     |
+----------------------+-----------------------+