该 SETINTERSECT 函数返回两个输入数组中不包含重复项的表达式集。
该 SETINTERSECT 函数在 Azure Cosmos DB for NoSQL 中返回两个输入数组中不存在重复项的表达式集。
Syntax
SETINTERSECT(<array_expr_1>, <array_expr_2>)
Arguments
| Description | |
|---|---|
array_expr_1 |
表达式数组。 |
array_expr_2 |
表达式数组。 |
返回类型
返回表达式数组。
例子
本部分包含有关如何使用此查询语言构造的示例。
相交静态数组
在此示例中,函数 SETINTERSECT 与静态数组一起使用,以演示相交功能。
SELECT VALUE {
simpleIntersect: SETINTERSECT([1, 2, 3, 4], [3, 4, 5, 6]),
emptyIntersect: SETINTERSECT([1, 2, 3, 4], []),
duplicatesIntersect: SETINTERSECT([1, 2, 3, 4], [1, 1, 1, 1]),
noMatchesIntersect: SETINTERSECT([1, 2, 3, 4], ["A", "B"]),
unorderedIntersect: SETINTERSECT([1, 2, "A", "B"], ["A", 1])
}
[
{
"simpleIntersect": [3, 4],
"emptyIntersect": [],
"duplicatesIntersect": [1],
"noMatchesIntersect": [],
"unorderedIntersect": ["A", 1]
}
]
文档中的数组字段相交
在此示例中,该 SETINTERSECT 函数用于查找文档中两个数组字段的交集。
SELECT
p.name,
SETINTERSECT(p.colors, p.inStockColors) AS availableColors
FROM
products p
WHERE
p.category = "modern-vests"
[
{
"name": "Snowilla vest",
"availableColors": ["Rhino", "Finch"]
}
]
注解
- 此函数不返回重复项。
- 此函数不使用索引。
- SKIP-VALIDATION