【问题标题】:What is the mongodb aggregate query for that?什么是 mongodb 聚合查询?
【发布时间】:2019-02-07 07:03:26
【问题描述】:

谁能帮帮我?获取此数据的正确 MongoDB 聚合查询是什么?

如果我得到这样的结果怎么办:

{ “_id”:1000, “项目”:[ “笔记本电脑”, “老鼠”, ], ... }

【问题讨论】:

  • 大家好,如果我想要这样的结果,查询是什么:{ "_id": 1000, "items":[ "laptop", "mouse", ], ... }跨度>
  • 你能正确更新预期结果吗?什么是 "_id": 1000 在您的预期结果中?
  • 我想要这样的结果:{ "_id": 1000, "items":[ "laptop", "mouse", ], ... } 其中 id 来自订单,我只是想要从产品集合中命名项目,其余的都来自“订单”

标签: angularjs mongodb aggregate mean-stack


【解决方案1】:

我认为您有一个包含订单的集合,其中包含对产品的引用,并且您想查找订单的所有产品,是这样吗?

您可能希望在聚合管道中使用$lookup,请参阅:https://docs.mongodb.com/manual/reference/operator/aggregation/lookup/

由于items 是一个数组,您必须首先使用$unwind。因此,您的聚合管道将类似于: db.orders.aggregate([{$unwind:'items'},{$lookup:{from:'products',localField:'items',foreignField:'_id',as:'item_product'}}])

您可能需要调整查询以满足您的特定需求,但这大致就是您所需要的

【讨论】:

  • 如果我得到这样的结果怎么办:{ "_id": 1000, "items":[ "laptop", "mouse", ], ... }
猜你喜欢
  • 2019-06-18
  • 2021-03-12
  • 1970-01-01
  • 1970-01-01
  • 2021-09-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多