CHOOSE (requête NoSQL)
S’APPLIQUE À : NoSQL
Renvoie l’expression à l’index spécifié d’une liste, ou Non défini si l’index dépasse les limites de la liste.
Syntaxe
CHOOSE(<numeric_expr>, <expr_1> [, <expr_N>])
Arguments
Description | |
---|---|
numeric_expr |
Expression numérique, qui spécifie l’index utilisé pour obtenir une expression spécifique dans la liste. L’index de départ de la liste est 1 . |
expr_1 |
La première expression de la liste. |
expr_N (Facultatif) |
Expression[s] facultative[s], pouvant contenir un nombre variable d’expressions jusqu’au N ème élément de la liste. |
Types de retour
Renvoie une expression, qui peut être de n’importe quel type.
Exemples
L’exemple suivant utilise une liste statique pour illustrer différentes valeurs renvoyées à différents index.
SELECT VALUE
CHOOSE(1, "adventure", "works", true, [1])
[
"adventure"
]
Cet exemple utilise une liste statique pour illustrer différentes valeurs renvoyées à différents index.
SELECT VALUE {
index_0: CHOOSE(0, "abc", 1, true, [1]),
index_1: CHOOSE(1, "abc", 1, true, [1]),
index_2: CHOOSE(2, "abc", 1, true, [1]),
index_3: CHOOSE(3, "abc", 1, true, [1]),
index_4: CHOOSE(4, "abc", 1, true, [1]),
index_5: CHOOSE(5, "abc", 1, true, [1])
}
[
{
"index_1": "abc",
"index_2": 1,
"index_3": true,
"index_4": [
1
]
}
]
Cet exemple final utilise un élément existant dans un conteneur avec trois champs pertinents.
[
{
"name": "Gremon Fins",
"sku": "73311",
"tags": [
"Science Blue",
"Turbo"
],
"category": "short-fins"
}
]
Cet exemple sélectionne une expression à partir des chemins existant dans l’élément.
SELECT
CHOOSE(3, p.category, p.name, p.sku) AS barcode
FROM
products p
WHERE
p.category = "short-fins"
[
{
"barcode": "73311"
}
]
Notes
- Cette fonction utilise l’indexation de liste à base unique. Le premier élément de la liste est référencé à l’aide de l’index numérique
1
au lieu du0
. - Cette fonction n’utilise pas l’index.