Delen via


CHOOSE (NoSQL-query)

VAN TOEPASSING OP: NoSQL

Retourneert de expressie op de opgegeven index van een lijst of Niet gedefinieerd als de index de grenzen van de lijst overschrijdt.

Syntaxis

CHOOSE(<numeric_expr>, <expr_1> [, <expr_N>])

Argumenten

Beschrijving
numeric_expr Een numerieke expressie, waarmee de index wordt opgegeven die wordt gebruikt om een specifieke expressie in de lijst op te halen. De beginindex van de lijst is 1.
expr_1 De eerste expressie in de lijst.
expr_N(Optioneel) Optionele expressie[s], die een variabel aantal expressies tot het Nth item in de lijst kan bevatten.

Retourtypen

Retourneert een expressie, die van elk type kan zijn.

Voorbeelden

In het volgende voorbeeld wordt een statische lijst gebruikt om verschillende retourwaarden in verschillende indexen te demonstreren.

SELECT VALUE 
    CHOOSE(1, "adventure", "works", true, [1])
[
  "adventure"
]

In dit voorbeeld wordt een statische lijst gebruikt om verschillende retourwaarden in verschillende indexen te demonstreren.

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
    ]
  }
]

In dit laatste voorbeeld wordt een bestaand item in een container met drie relevante velden gebruikt.

[
  {
    "name": "Gremon Fins",
    "sku": "73311",
    "tags": [
      "Science Blue",
      "Turbo"
    ],
    "category": "short-fins"
  }
]

In dit voorbeeld wordt een expressie uit bestaande paden in het item geselecteerd.

SELECT
    CHOOSE(3, p.category, p.name, p.sku) AS barcode
FROM
    products p
WHERE
    p.category = "short-fins"
[
  {
    "barcode": "73311"
  }
]

Opmerkingen

  • Deze functie maakt gebruik van op één gebaseerde lijstindexering. Naar het eerste item in de lijst wordt verwezen met behulp van de numerieke index 1 in plaats van 0.
  • Deze functie maakt geen gebruik van de index.

Zie ook