在MongoDB中加入查询

时间:2019-03-27 03:20:30

标签: mongodb


我正在学习MongoDB,并且真的是NoSQL的新手。
我有2个这样的收藏:
客户:

Customer:

帐户:

enter image description here

我想通过客户集合中的_id和客户集合中的cust_id在客户和客户集合之间创建联接查询。我尝试过:

db.Customer.aggregate({
    $lookup:{
        from:"Account",
        localField:"_id",
        foreignField:"cust_id",
        as:"customer_account"
}}).pretty()

但是我的“ customer_account”返回一个空数组。我该如何解决?非常感谢你!

1 个答案:

答案 0 :(得分:3)

cust_id文档中的Account字段为string类型(如双引号所示)。

您需要将其更改为ObjectId类型。因此cust_id: "5499..."将成为cust_id: ObjectId("5499...")