Usunięcie powtarzających się dokumentów przy unii dwóch kolekcji

0

Chodzi mi o taki przypadek ze mam dwie kolekcje z danymi które się częściowo pokrywają. chce odfiltrować według pewnych kryteriów jedną z nich i połączyć z drugą, ale żeby duplikatów nie mieć. Wymyśliłam rozwiązanie, podam je tu bo może ktoś je ulepszy lub skrytykuje a jak nie to się komuś przyda:
Przed łączenie lookup w kolekcja1 po _id z kolekcja2 dodający te _id w polu dodanepole
Zostawienie tylko rekordów .....eeee dokumentów dla których "dodanepole" : { $exists: true, $eq: [] }
Zrobienie unionWith.
edit:
wiem ze jest jakieś distinct ale w ogóle nie pasuje do tego problemu

0

Przy union to nie zadziala distinct, bys musiala chyba zorbic grupowanie po tym twoim unionWIth?

db.kolekcja1.aggregate([
  { $unionWith: { coll: "kolekcja2" } },
  { $group: { _id: "$id", uniqueValues: { $addToSet: "$id" } } }
]);

albo ewentualnie zroibc $merge

1 użytkowników online, w tym zalogowanych: 0, gości: 1