Ich habe zwei verschiedene Sammlungen mit einem gemeinsamen Feld, zum Beispiel einem Benutzer-ID. Es gibt auch andere Attribute, die die Benutzer-IDs qualifizieren.
Zum Beispiel:
Sammlung 1: {UserId, SellsToUserId}
Sammlung 2: {UserId, BuysFromUserId}
Ich möchte eine Operation ausführen, die mir den Unterschied zwischen zwei Sets zeigt.
Ein Beispiel-Query wäre: Holen Sie alle Benutzer-IDs, denen eine bestimmte Benutzer-ID verkauft, aber nicht von ihnen kauft.
Lösung in Pseudocode
var sellToCursor = collection1.Find(Query.EQ("UserId", Ich)).SetFields({SellsToUserId});
var buyFromCursor = collection2.Find(Query.EQ("UserId", Ich)).SetFields({BuysFromUserId});
SellToButDontBuyFrom[] = sellTo - buyFrom; //definitiv Pseudocode hier.
Ich möchte dies auf dem MongoDB-Server machen, weil ich große Datensätze habe.
Irgendwelche Vorschläge, dies auf effiziente Weise zu tun?