MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Abrufen von Daten aus Sammlung b, die nicht in Sammlung a enthalten sind, in einer MongoDB-Shell-Abfrage

In Mongo 3.2 scheint der folgende Code zu funktionieren

db.collectionb.aggregate([
    {
      $lookup:
        {
          from: "collectiona",
          localField: "collectionb_fk",
          foreignField: "collectiona_fk",
          as: "matched_docs"
        }
   },
   {
      $match: { "matched_docs": { $eq: [] } }
   }
]);

basierend auf diesem https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/#use-lookup-with-an-array-Beispiel