Tous les produits
Search
Centre de documentation

MaxCompute:INDEX

Dernière mise à jour :Aug 20, 2026

Renvoie une valeur issue d'un paramètre ARRAY ou MAP.

Format de la commande

INDEX (<var1>[<var2>])

Notes

  • Si var1 est un array<T>, cette fonction récupère l'élément situé à l'index var2 dans var1. L'indexation des éléments du tableau commence à 0.

  • Si var1 est un map<K, V>, cette fonction récupère la valeur associée à la clé var2 dans var1.

Remarque
  • Cette opération n'utilise pas le mot-clé INDEX. Utilisez directement la syntaxe <var1>[<var2>]. Dans le cas contraire, une erreur est renvoyée.

  • Si var1 est un tableau, var2 correspond à l'index. Si var1 est une map, var2 correspond à la clé.

Description des paramètres

  • var1 : Obligatoire. Un array<T> ou map<K, V>. Dans un array<T>, T spécifie le type de données des éléments du tableau. T peut être de n'importe quel type de données. Dans un map<K, V>, K et V représentent respectivement les types de données des clés et des valeurs.

  • var2 : Obligatoire.

    • Si var1 est un array<T>, var2 doit être une valeur BIGINT non négative.

    • Si var1 est un map<K, V>, var2 doit avoir le même type de données que K.

Description de la valeur de retour

  • Si var1 est un array<T>, la fonction renvoie une valeur de type T. Les règles suivantes s'appliquent :

    • Si var2 se trouve en dehors des limites du tableau var1, la fonction renvoie NULL.

    • Si var1 est NULL, la fonction renvoie NULL.

  • Si var1 est un map<K, V>, la fonction renvoie une valeur de type V. Les règles suivantes s'appliquent :

    • Si la clé var2 n'existe pas dans le map<K, V>, la fonction renvoie NULL.

    • Si var1 est NULL, la fonction renvoie NULL.

Exemples d'utilisation

  • Exemple 1 : var1 est un array<T>.

    -- Returns c.
    SELECT ARRAY('a','b','c')[2];
  • Exemple 2 : var1 est un map<K, V>.

    -- Returns 1.
    SELECT STR_TO_MAP("test1=1,test2=2")["test1"];

Fonctions connexes

INDEX est une fonction de type complexe. Pour plus d'informations sur les fonctions qui traitent les types de données complexes, tels que ARRAY, MAP, STRUCT et JSON, consultez la rubrique Fonctions de type complexe.