J'ai 2 collections sur 2 DB distincts. Les deux stockent un champ tableau. Je prévois d'interroger deux à la fois de sorte que:MongoDB: requête imbriquée avec des tableaux, et ses performances
Tous les documents de collecte 1 qui ont des éléments [A, B] dans leur gamme champ et leurs _ids sont présents dans le champ de tableau de collection 2 avec un _id document spécifique .
À titre d'exemple:
docs (collection 1, DB 1):
[{"_id":ObjectId("doc1"), "array1":["A","B"]}, {"_id":ObjectId("doc2"), "array1":["A","C"]}]
User_Docs (collection 2, DB 2):
[{"_id":ObjectId("usr1"), "array2": [ObjectId("doc1"),ObjectId("foo")]}, {"_id":ObjectId("usr2"), "array2": [ObjectId("bar"),ObjectId("baz")]}]
je besoin d'une requête celui donné A, B et usr1, renvoie l'objet 'doc1' (parce qu'il a A, B dans son champ array1 et usr1 l'a dans son champ array2).
Je peux évidemment aller chercher tous les documents ayant A, B dans une requête et tous les documents d'usr1 dans une autre requête et trouver les éléments communs au niveau de l'application, mais y at-il une meilleure façon de le faire en utilisant MongoDB?
Merci pour votre aide.