【问题标题】:How to use $lte function in mongodb aggregation operations如何在mongodb聚合操作中使用$lte函数
【发布时间】:2018-10-25 17:20:34
【问题描述】:

在 mongoDB 中,我输入了一个包含公司员工数据的集合,包括他们的薪水。我在聚合中使用 $avg 操作计算了员工的平均薪水。现在,如果我只想计算那些有薪水的员工的平均薪水小于某个值,我该怎么做?

【问题讨论】:

    标签: mongodb mongodb-query


    【解决方案1】:

    目前我无法访问 mongodb 来测试查询,但在您的情况下,您只需在 $avg 分组之前的聚合“管道”中添加一个 $match 查询对象。

    类似的东西:

    [{'$match':{'salary':{'$lt':199}}}, {'$group':{...}}]
    

    【讨论】:

      【解决方案2】:

      你可以使用

      db.collectionName.aggregate([
          {
              $match: {
                  "salary": {
                      $lte: 100
                  }
              }
          },
          {
              $group: {
                  "_id": "$groupKey",
                  "avg": {
                      $avg: "$salary"
                  }
              }
          }
      ])
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2015-05-25
        • 1970-01-01
        • 1970-01-01
        • 2015-08-09
        • 2023-02-25
        • 1970-01-01
        • 2020-01-03
        相关资源
        最近更新 更多