Ce sont des données de collecte « entreprise »
{
_id: "1",
company: "ABC",
addresses: [
{
_id: "2",
address: "a1",
district: "d1",
city: "c1"
},
{
_id: "3",
address: "a2",
district: "d2",
city: "c2"
},
{
_id: "4",
address: "a3",
district: "d3",
city: "c3"
}
]
}
Ceci est de données de collecte « produit »
{
product: "xyz",
companyid: "1", //_id of record in company's collection
addresses: ["2", "4"] //addresses _id of record in company's collection
},
{
product: "pqr",
companyid: "1",
addresses: ["3", "4"]
}
Maintenant, je dois obtenir tous les produits avec la société et leurs adresses comme ci-dessous
{
product: "xyz",
company: "ABC",
addresses: [
{
_id: "2",
address: "a1",
district: "d1",
city: "c1"
},
{
_id: "4",
address: "a3",
district: "d3",
city: "c3"
}
]
},
{
product: "pqr",
companyid: "ABC",
addresses: [
{
_id: "3",
address: "a2",
district: "d2",
city: "c2"
},
{
_id: "4",
address: "a3",
district: "d3",
city: "c3"
}
]
}
S'il y a un tableau, seulement dans les produits, nous pouvons les dérouler et effectuer une recherche. Mais dans cette condition il y a des tableaux dans les deux collections, alors comment pouvons-nous les comparer ou utiliser $ lookup pour obtenir la sortie attendue? S'il y a une autre alternative, s'il vous plaît faites le moi savoir.
Grande utilisation de setIsSubset $. –