Dela via


SETINTERSECT – Frågespråk i Cosmos DB (i Azure och Fabric)

Funktionen SETINTERSECT returnerar den uppsättning uttryck som finns i båda indatamatriserna utan dubbletter.

Funktionen SETINTERSECT returnerar den uppsättning uttryck som finns i båda indatamatriserna, utan dubbletter, i Azure Cosmos DB.

Syntax

SETINTERSECT(<array_expr_1>, <array_expr_2>)

Arguments

Description
array_expr_1 En matris med uttryck.
array_expr_2 En matris med uttryck.

Returtyper

Returnerar en matris med uttryck.

Examples

Det här avsnittet innehåller exempel på hur du använder den här frågespråkkonstruktionen.

Korsa statiska matriser

I det här exemplet SETINTERSECT används funktionen med statiska matriser för att demonstrera intersektera funktioner.

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

Intersekera matrisfält i dokument

I det här exemplet SETINTERSECT används funktionen för att hitta skärningspunkten mellan två matrisfält i ett dokument.

SELECT
    p.name,
    SETINTERSECT(p.colors, p.inStockColors) AS availableColors
FROM
    products p
WHERE
    p.category = "modern-vests"
[
  {
    "name": "Snowilla vest",
    "availableColors": ["Rhino", "Finch"]
  }
]

Anmärkningar

  • Den här funktionen returnerar inte dubbletter.
  • Den här funktionen använder inte indexet.
  • SKIP-VALIDATION