【问题标题】:AVG function using mongoDB使用 mongoDB 的 AVG 函数
【发布时间】:2021-07-29 15:25:46
【问题描述】:

我在 MongoDB 中写了这个:

db.sponsors.aggregate([{"$group" : {_id:"$idspons", count:{$sum:1}}}])

通过这种方式,我可以为每个 id 获取它们在我的数据库中出现的次数:

{ "_id" : "01", "count" : 87 }
{ "_id" : "02", "count" : 6 }
{ "_id" : "03", "count" : 18 }
{ "_id" : "04", "count" : 152 }
{ "_id" : "05", "count" : 96 }
{ "_id" : "06", "count" : 28 }
{ "_id" : "07", "count" : 74 }

我想做这个计数的平均值(这样我的输出将是 65,85 )。我该怎么办?

【问题讨论】:

  • 您认为提供的答案中是否有某些内容无法解决您的问题?如果是这样,那么请对答案发表评论,以澄清究竟需要解决哪些尚未解决的问题。如果它确实回答了您提出的问题,请注意Accept your Answers您提出的问题

标签: database mongodb mongodb-query


【解决方案1】:

试试这个:

db.sponsors.aggregate([{$group:{"_id":"_id", AverageValue: { $avg: "$count" }}}])

【讨论】:

  • 它返回 { "_id" : "_id", "AverageValue" : null }
【解决方案2】:
  • $group 为 null 并使用 $avg 进行平均计数,
db.sponsors.aggregate([
  { "$group": { _id: "$idspons", count: { $sum:1 } } },
  { "$group": { _id: null, averageCount: { $avg: "$count" } } }
])

Playground

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-03-11
    • 1970-01-01
    • 1970-01-01
    • 2010-11-24
    • 2019-12-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多