ARRAY_SLICE (requête NoSQL)
S’APPLIQUE À : NoSQL
Renvoie un sous-ensemble d’une expression de tableau selon l’index et la longueur spécifiés.
Syntaxe
ARRAY_SLICE(<array_expr>, <numeric_expr_1> [, <numeric_expr_2>])
Arguments
Description | |
---|---|
array_expr |
Expression de tableau. |
numeric_expr_1 |
Expression numérique indiquant l’indice à partir duquel le tableau doit commencer pour le sous-ensemble. Optionnellement, des valeurs négatives peuvent être utilisées pour spécifier l’indice de départ par rapport au dernier élément du tableau. |
numeric_expr_2 (Facultatif) |
Expression numérique facultative indiquant la longueur maximale des éléments du tableau obtenu. |
Types de retour
Retourne une expression de tableau.
Exemples
L’exemple suivant illustre comment obtenir différentes tranches d’un tableau à l’aide de la fonction.
SELECT VALUE {
sliceFromStart: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 0),
sliceFromSecond: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 1),
sliceFromLast: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], -1),
sliceFromSecondToLast: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], -2),
sliceThreeFromStart: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 0, 3),
sliceTwelveFromStart: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 0, 12),
sliceFiveFromThird: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], 3, 5),
sliceOneFromSecondToLast: ARRAY_SLICE([70, 86, 92, 99, 85, 90, 82], -2, 1)
}
[
{
"sliceFromStart": [70, 86, 92, 99, 85, 90, 82],
"sliceFromSecond": [86, 92, 99, 85, 90, 82],
"sliceFromLast": [82],
"sliceFromSecondToLast": [90, 82],
"sliceThreeFromStart": [70, 86, 92],
"sliceTwelveFromStart": [70, 86, 92, 99, 85, 90, 82],
"sliceFiveFromThird": [99, 85, 90, 82],
"sliceOneFromSecondToLast": [90]
}
]
Notes
- Cette fonction du système n’utilise pas l’index.