Jest wiele sposobów na zrobienie tego, o co prosisz. Musisz najpierw wiedzieć kilka rzeczy o danych. Ile dokumentów będzie mieć dokument B?
-
Wygląda na to, że chciałbyś, aby Kolekcja A zawierała pole pozycji z dokumentami, które są B. Jest na to limit 16 MB, ale w większości przypadków działa dobrze.
-
Policz na A z wstawionymi numerami rekordów B. (Tj. za każdym razem, gdy wstawiasz B,
$inc
pole na A). Następnie zrób indeks w polu licznika dla A i wykonajsort({count: -1})