Поделиться через


SETDIFFERENCE (запрос NoSQL)

ОБЛАСТЬ ПРИМЕНЕНИЯ: NoSQL

Возвращает набор, содержащий только элементы из первого входного набора, которые не входят во второй входной набор без дубликатов.

Синтаксис

SETDIFFERENCE(<arr_expr1>, <arr_expr2>)  

Arguments

Description
arr_expr1 Первое выражение массива.
arr_expr2 Второе выражение массива.

Типы возвращаемых данных

Возвращает выражение массива.

Примеры

В следующем примере показаны результаты использования этой функции для поиска различий между массивами.

SELECT VALUE {
    "case1": SETDIFFERENCE([1, 2, 3], [1, 2, 6, 7]),
    "case2": SETDIFFERENCE([1, 2, 6, 7], [1, 2, 3]),
    "case3": SETDIFFERENCE([1, 2, 3, 4], [1, 2, 3, 4, 5, 6]),
    "case4": SETDIFFERENCE([], [1, 2, 3]),
    "case5": SETDIFFERENCE([1, 2, 3], []),
    "case6": SETDIFFERENCE([1, 1, 1, 1], [2, 3, 4])
}
[
    {
        "case1": [3],
        "case2": [6, 7],
        "case3": [],
        "case4": [],
        "case5": [1, 2, 3],
        "case6": [1]
    }
]

Замечания

  • Эта системная функция не будет использовать индекс.