如何检索 mongodb 上的空查找条目?

How to retrieve null lookup entries on mongodb?

我的查询提供了我想要的连接:

db.summoners.aggregate([
    { "$match": { "nick":"Luispfj" } },
    { "$unwind": "$matches" },
    {
        "$lookup": {
            "from":"matches",
            "localField":"matches.gameId",
            "foreignField":"gameId",
            "as":"fullMatches"
        }
    },
    { "$unwind": "$fullMatches" },
    {
        "$group": {
            "_id": null,
            "matches": { "$push":"$fullMatches" }
        }
    }
])

但是当我 运行 展开函数时,空条目消失了。我如何检索它们(如果可能,使用它们各自的 "gameId"s?

此外,有没有办法只检索 matches 数组,而不是将其作为它创建的 "null-id-object" 的子属性?

$unwind 采用可选字段 preserveNullAndEmptyArrays,默认情况下为 false。如果将其设置为 true,unwind 将输出为 null 的文档。 Read more about $unwind

{ 
  "$unwind": {
    path: "$fullMatches",
    preserveNullAndEmptyArrays: true
  }
},