CHOOSE (NoSQL sorgusu)
UYGULANANLAR: NoSQL
Bir listenin belirtilen dizinindeki ifadeyi veya dizin listenin sınırlarını aşarsa Undefined ifadesini döndürür.
Söz dizimi
CHOOSE(<numeric_expr>, <expr_1> [, <expr_N>])
Bağımsız değişkenler
Açıklama | |
---|---|
numeric_expr |
Listede belirli bir ifadeyi almak için kullanılan dizini belirten sayısal ifade. Listenin başlangıç dizini şeklindedir 1 . |
expr_1 |
Listedeki ilk ifade. |
expr_N (İsteğe bağlı) |
İsteğe bağlı ifade[s]; listedeki th öğesine kadar N değişken sayıda ifade içerebilir. |
Dönüş türleri
Herhangi bir türde olabilecek bir ifade döndürür.
Örnekler
Aşağıdaki örnek, farklı dizinlerdeki çeşitli dönüş değerlerini göstermek için statik bir liste kullanır.
SELECT VALUE
CHOOSE(1, "adventure", "works", true, [1])
[
"adventure"
]
Bu örnek, farklı dizinlerdeki çeşitli dönüş değerlerini göstermek için statik bir liste kullanır.
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
]
}
]
Bu son örnek, üç ilgili alanı olan bir kapsayıcıda var olan bir öğeyi kullanır.
[
{
"name": "Gremon Fins",
"sku": "73311",
"tags": [
"Science Blue",
"Turbo"
],
"category": "short-fins"
}
]
Bu örnek, öğedeki mevcut yollardan bir ifade seçer.
SELECT
CHOOSE(3, p.category, p.name, p.sku) AS barcode
FROM
products p
WHERE
p.category = "short-fins"
[
{
"barcode": "73311"
}
]
Açıklamalar
- Bu işlev tek tabanlı liste dizini oluşturmayı kullanır. Listedeki ilk öğeye yerine
0
sayısal dizin1
kullanılarak başvurulur. - Bu işlev dizini kullanmaz.