【发布时间】:2019-07-13 11:42:02
【问题描述】:
具有类似的架构:
{
"_id": ObjectId("..."),
"views": [
{
"name": "AAA",
"permissions": ['PERM_1','PERM_2']
},
{
"name": "BBB",
"permissions": ['PERM_2']
},
{
"name": "CCC",
"permissions": ['PERM_3']
}]
}
我想获得包含“PERM_1”和“PERM_3”的视图的结果,如下所示:
{
"_id": ObjectId("..."),
"views": [
{
"name": "AAA",
"permissions": ['PERM_1','PERM_2']
},
{
"name": "CCC",
"permissions": ['PERM_3']
}]
}
但是,我并没有真正成功地得到我想要的结果。这是我的查询:
Schema.aggregate([
{
$project: {
views: {
$filter: {
input: '$views.permissions',
as: 'perm',
cond: {
????? // return only PERM_1 and PERM_3
}
}
}
}
}])
感谢您的帮助。
【问题讨论】:
标签: mongodb mongoose nosql aggregation-framework