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 Ndeğ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 0sayısal dizin 1 kullanılarak başvurulur.
  • Bu işlev dizini kullanmaz.

Ayrıca bkz.