Renvoie la position de la première occurrence d'un element donné dans le tableau a. Le comptage des positions commence à 1, de gauche à droite.
Syntaxe
bigint array_position(array<T> <a>, T <element>)
Paramètres
-
a : obligatoire. Tableau. Le type
Tdansarray<T>indique le type de données des éléments du tableau. Les types suivants sont pris en charge :TINYINT, SMALLINT, INT et BIGINT
FLOAT et DOUBLE
BOOLEAN
DECIMAL et DECIMALVAL
DATE, DATETIME, TIMESTAMP, IntervalDayTime et IntervalYearMonth
STRING, BINARY, VARCHAR et CHAR
ARRAY, STRUCT et MAP
element : obligatoire. Élément dont vous souhaitez connaître la position. Son type de données doit être identique à celui des éléments du tableau a.
Valeur renvoyée
La fonction renvoie une valeur de type BIGINT selon les règles suivantes :
Si la valeur de a ou de element est null, la fonction renvoie null.
Si l'élément spécifié est introuvable, la fonction renvoie 0.
Exemples
-
Exemple 1 : Renvoyer la position de la première occurrence de
1dansarray(3, 2, 1). Exemple d'instruction :-- The return value is 3. select array_position(array(3, 2, 1), 1); -
Exemple 2 : Le paramètre element spécifié est null. Exemple d'instruction :
-- The return value is null. select array_position(array(3, 1, null), null);
Fonctions associées
ARRAY_POSITION est une fonction de type complexe. Pour plus d'informations sur les fonctions de traitement des types complexes (ARRAY, MAP, STRUCT et JSON), consultez la section Fonctions de type complexe.