As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
$setUnion
O operador $setUnion de agregação no Amazon DocumentDB é usado para combinar dois ou mais conjuntos de valores e retornar um conjunto que contém todos os elementos exclusivos dos conjuntos de entrada. Esse operador é útil quando você precisa realizar operações baseadas em conjuntos em campos de matriz em seus documentos.
Parâmetros
-
expression1: uma expressão que se resolve em uma matriz. -
expression2: uma expressão que se resolve em uma matriz. -
expressionN: expressões adicionais que se resolvem em matrizes (opcional).
Exemplo (MongoDB Shell)
O exemplo a seguir demonstra como usar o $setUnion operador para combinar os elementos exclusivos de dois campos de matriz em uma coleção.
Crie documentos de amostra
db.users.insertMany([ { _id: 1, name: "Alice", hobbies: ["reading", "swimming"], skills: ["coding", "writing"] }, { _id: 2, name: "Bob", hobbies: ["cooking", "gardening"], skills: ["coding", "photography"] }, { _id: 3, name: "Charlie", hobbies: ["reading", "painting"], skills: ["gardening", "music"] } ]);
Exemplo de consulta
db.users.aggregate([ { $project: { name: 1, allInterests: { $setUnion: ["$hobbies", "$skills"] } } } ]);
Saída
[
{ "_id" : 1, "name" : "Alice", "allInterests" : [ "coding", "reading", "swimming", "writing" ] },
{ "_id" : 2, "name" : "Bob", "allInterests" : [ "coding", "cooking", "gardening", "photography" ] },
{ "_id" : 3, "name" : "Charlie", "allInterests" : [ "gardening", "music", "painting", "reading" ] }
]
Neste exemplo, o $setUnion operador é usado para combinar os elementos exclusivos dos campos hobbies e da skills matriz para cada documento do usuário. O allInterests campo resultante contém a união de todos os hobbies e habilidades exclusivos de cada usuário.
Exemplos de código
Para ver um exemplo de código para usar o $setUnion comando, escolha a guia do idioma que você deseja usar: