У меня есть две разные коллекции с общим полем, скажем, UserId. Существуют также другие атрибуты, которые определяют идентификаторы пользователей.
Например:
Collection 1: {UserId, SellsToUserId}
Collection 2: {UserId, BuysFromUserId}
Я хочу запустить операцию, которая даст мне разницу между двумя наборами.
Пример запроса:
Получить все идентификаторы пользователей, которым данный идентификатор пользователя продает, но не покупает у них.
Решение в псевдокоде
var sellToCursor = collection1.Find(Query.EQ("UserId", Me)).SetFields({SellsToUserId});
var buyFromCursor = collection2.Find(Query.EQ("UserId", Me)).SetFields({BuysFromUserId});
SellToButDontBuyFrom[] = sellTo - buyFrom; //definitely pseudocode here.
Я хочу сделать это на сервере MongoDB, потому что у меня большие наборы данных.
Любые предложения, чтобы сделать это эффективным способом?