Javascript Mongo Find/Aggregate将子数组返回为完整数组,将某些子数组返回为空数组
我很绝望:( 我有一个只包含一个文档的集合,其大小约为~200MB。 并且文档包含子数组作为属性。这意味着文档具有下一个形状:Javascript Mongo Find/Aggregate将子数组返回为完整数组,将某些子数组返回为空数组,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,我很绝望:( 我有一个只包含一个文档的集合,其大小约为~200MB。 并且文档包含子数组作为属性。这意味着文档具有下一个形状: { "_id": ........ "time": ....... "categories": [ { "name":"Cat1", "subCategories&q
{
"_id": ........
"time": .......
"categories": [
{
"name":"Cat1",
"subCategories":
[
{
"name2": "SubCat11"
},
{
"name2": "SubCat12"
}
]
},
{
"name":"Cat2",
"subCategories":
[
{
"name2": "SubCat21"
},
{
"name2": "SubCat22"
}
]
},
{
"name":"Cat3",
"subCategories":
[
{
"name2": "SubCat31"
},
{
"name2": "SubCat32"
}
]
},
]
}
我尝试使用(aggregate/find)获取所有文档数据及其所有子数据,但是,返回的数据确实包含所有“subCategories”属性,并且只有前3个“subCategories”完整数组和后30个为空数组
我的问题是:
Model.find({});
返回值为:
{
"_id": ........
"time": .......
"categories": [
{
"name":"Cat1",
"subCategories":
[
{
"name2": "SubCat11"
},
{
"name2": "SubCat12"
}
]
},
{
"name":"Cat2",
"subCategories":
[
{
"name2": "SubCat21"
},
{
"name2": "SubCat22"
}
]
},
{
"name":"Cat3",
"subCategories":
[
] // >>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> HERE IS THE BUG, THE EMPTY ARRAY !
},
]
}
如果结果需要:
{
"_id": ........
"time": .......
"categories": [
{
"name":"Cat1",
"subCategories":
[
{
"name2": "SubCat11"
},
{
"name2": "SubCat12"
}
]
},
{
"name":"Cat2",
"subCategories":
[
{
"name2": "SubCat21"
},
{
"name2": "SubCat22"
}
]
},
{
"name":"Cat3",
"subCategories":
[
{
"name2": "SubCat31"
},
{
"name2": "SubCat32"
}
]
},
]
}
我无法更改数据库的结构,我需要帮助:)