MongoDB |Вся база данных, у которой нет соответствующего foreignField, выводится - PullRequest
0 голосов
/ 24 октября 2018
db.getCollection('post').aggregate([
    {$match : {post_no: 63}},
    { "$unwind": 
        { path:
            "$comment", preserveNullAndEmptyArrays:true // If null
         }
    },
    {
        "$lookup": {
            from: 'comment',
            localField: 'comment.cmt_no',
            foreignField: "cmt_no", // Many DBs do not have "cmt_no".
            as: 'cmt_no'
        }
    }
])

В этом случае выводятся все базы данных (foreignField: cmt_no не имеет).

Почему это так?Есть ли способ дополнить его?

(Если я не использую 'preserveNullAndEmptyArrays: true', я не получу никаких результатов.)

Если "$ comment" равно нулю, я хочучтобы получить результат, который «поиск» не выполнил.

...