【问题标题】:Omitting part of a mongo array when it has a specific value当 mongo 数组具有特定值时省略部分数组
【发布时间】:2019-11-01 10:31:12
【问题描述】:

我有一个结构如下的 json 数组: { "properties": [{ "name": "ok", "value": 1 }, { "name": "ok_aswell", "value": 1 }, { "name": "ok_aswell", "value": 2 }, { "name": "get_rid", "value": 2 } ] }

我希望我的查询返回除“get_rid”记录之外的所有内容: { "properties": [{ "name": "ok", "value": 1 }, { "name": "ok_aswell", "value": 1 }, { "name": "ok_aswell", "value": 2 } ] }

我尝试了这里的建议:Conditionally include a field (_id or other) in mongodb project aggregation?,但它们似乎没有用。

【问题讨论】:

    标签: mongodb mongodb-query aggregation-framework


    【解决方案1】:

    在投影聚合中尝试 $filter

    {$project:{
      properties:{
          $filter: {
                     input: "$properties",
                     as: "item",
                     cond: {$ne: ["$$item.name","get_rid"]}
                   } 
      }
    }}
    

    【讨论】:

      猜你喜欢
      • 2013-07-12
      • 1970-01-01
      • 2018-09-29
      • 1970-01-01
      • 2019-05-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多