【问题标题】:How to select a field and a count of a nested array in mongodb [duplicate]如何在mongodb中选择一个字段和一个嵌套数组的计数[重复]
【发布时间】:2017-09-28 01:22:29
【问题描述】:

我有以下 mongo db 集合

{
 "_id" : 1,
 "name" : "Sam",
 "telephone" : [1234,4567,8678],
 "age" : 34
},
{
 "_id" : 2,
 "name" : "Joe",
 "telephone" : [4456,4434],
 "age" : 42
}

我想获取姓名和电话号码。应该是什么查询?我的输出应该如下。

{
  "name" : "Sam",
  "telephoneCount" : 3
},
{
  "name" : "Joe",
  "telephoneCount" : 2
} 

【问题讨论】:

    标签: mongodb aggregation-framework


    【解决方案1】:

    您可以使用以下查询。使用$project 保留姓名字段,使用$size 统计电话号码。

    db.collection.aggregate( { $project: {name:1, telephoneCount: {$size: "$telephone"}}})
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2023-03-05
      • 1970-01-01
      • 2018-12-08
      • 2014-10-28
      • 1970-01-01
      • 2014-01-13
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多