【问题标题】:mongodb query issue for contructing where clause构建where子句的mongodb查询问题
【发布时间】:2019-02-15 13:21:45
【问题描述】:

我对 mongoDB 完全陌生,我有以下查询:

jds=jd.aggregate( [
   {
     "$group": {
        "_id": {"house_NAME":"$house_NAME"},
        "count": { "$sum": 1 }
     }
   },
   { "$match": { "count": { "$gt": 0 } } }
   ] )

返回集合中每个房屋名称的计数。

我的收藏有点像下面:

record_id  house_NAME  status

1          Thomas    Open
2          Panther   Close
3          Thomas    Close

我想要的是只返回状态为“Open”的值,我想在上面的查询中添加“and”子句,以便它只返回那些状态为“Open”的文档的计数。我不知道具体怎么做。

我被困在其中。任何帮助将不胜感激!

提前致谢!

【问题讨论】:

    标签: python mongodb aggregation-framework pymongo


    【解决方案1】:

    您可以在管道的开头添加$match 阶段

    jds=jd.aggregate([
      { "$match": { "status": "Open" }},
      { "$group": {
        "_id": { "house_NAME": "$house_NAME" },
        "count": { "$sum": 1 }
      }},
     { "$match": { "count": { "$gt": 0 }}}
    ])
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2010-10-28
      • 1970-01-01
      • 2023-04-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多