Node.js 在mongoDB中的嵌套记录中查找(按引用ObjectId嵌套)

Node.js 在mongoDB中的嵌套记录中查找(按引用ObjectId嵌套),node.js,mongodb,mongoose,nested,Node.js,Mongodb,Mongoose,Nested,我有两个记录,order和user,我的订单有一个用户的对象id这是我的记录: 订单: { "_id" : ObjectId("56ea382b3c21a4a74591dc99"), "user" : ObjectId("56ea382b3c21a4a74591dc98"), "created" : 1458190379858 } 和用户: { "_id" : ObjectId("56febb7b4597977168894445"), "phone" : "09197377

我有两个记录,order和user,我的订单有一个用户的对象id这是我的记录:

订单:

{
  "_id" : ObjectId("56ea382b3c21a4a74591dc99"),
  "user" : ObjectId("56ea382b3c21a4a74591dc98"),
  "created" : 1458190379858
}
和用户:

{
  "_id" : ObjectId("56febb7b4597977168894445"),
  "phone" : "09197377057",
  "created" : 1459170746688,
}
如何查找用户电话为“09197377057”的订单

在mongodb或mongoose中有可能找到类似的内容吗?

是您在这里需要的,如果您想在单个查询中找到

db.order.aggregate({
    $lookup: {
        from: "user",
        localField: "user",
        foreignField: "_id",
        as: "order_user"
    }
}, {
    $match: {
        "order_user.phone": "09197377057"
    }
});

我想在一个查询库中访问大量数据。我可以同时应用聚合和填充吗?我完全确定mongoose是如何工作的,但我认为您必须先聚合,然后填充结果。上面的示例在服务器端执行查找和聚合。