1 回答
TA贡献1784条经验 获得超2个赞
在该$group阶段之后,将有 2 个文档在管道中,一个带有_id:myId和一个带有_id:personID.
该$project阶段一次对单个文档进行操作,并且无法引用其他文档中的字段。
为了同时看到两者,使用第二组阶段并将两个跟随者数组推入一个数组数组,然后您可以让项目阶段获得组合数组的前两个元素的交集。
{
"$group": bson.M{
"_id": "$follower",
"followers": bson.M{"$push": "$userID"},
},
},
{
"$group": bson.M{
"_id": null,
"combined": bson.M{"$push": "$followers"},
},
},
{
"$project": bson.M{
"common": bson.M{"$setIntersection": []interface{}{
bson.M{"$arrayElemAt":[]interface{}{"$combined",0},
bson.M{"$arrayElemAt":[]interface{}{"$combined",1}
}},
},
},
- 1 回答
- 0 关注
- 221 浏览
添加回答
举报
