CHOOSE (запрос NoSQL)
ОБЛАСТЬ ПРИМЕНЕНИЯ: NoSQL
Возвращает выражение по указанному индексу списка или не определено, если индекс превышает границы списка.
Синтаксис
CHOOSE(<numeric_expr>, <expr_1> [, <expr_N>])
Аргументы
Description | |
---|---|
numeric_expr |
Числовое выражение, указывающее индекс, используемый для получения определенного выражения в списке. Начальный индекс списка .1 |
expr_1 |
Первое выражение в списке. |
expr_N (Необязательно) |
Необязательное выражение[s], которое может содержать переменное число выражений до N элемента в списке. |
Типы возвращаемых данных
Возвращает выражение, которое может быть любого типа.
Примеры
В следующем примере используется статический список для демонстрации различных возвращаемых значений в разных индексах.
SELECT VALUE
CHOOSE(1, "adventure", "works", true, [1])
[
"adventure"
]
В этом примере используется статический список для демонстрации различных возвращаемых значений по разным индексам.
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
]
}
]
В этом последнем примере используется существующий элемент в контейнере с тремя соответствующими полями.
[
{
"name": "Gremon Fins",
"sku": "73311",
"tags": [
"Science Blue",
"Turbo"
],
"category": "short-fins"
}
]
В этом примере выбирается выражение из существующих путей в элементе.
SELECT
CHOOSE(3, p.category, p.name, p.sku) AS barcode
FROM
products p
WHERE
p.category = "short-fins"
[
{
"barcode": "73311"
}
]
Замечания
- Эта функция использует одноуровневую индексирование списков. Первый элемент в списке ссылается с помощью числового индекса
1
, а не0
. - Эта функция не использует индекс.