簡體   English   中英

mongodb:查詢平均值大於某個數的文檔

[英]mongodb: Query documents with average greater than a number

如何找到平均分數大於 5 的文檔。集合如下所示:
集合餐廳:

{"grades": [{"grade": "A", "score": 2}, {"grade": "A", "score": 6}], "name": "Morris Park Bake Shop", "restaurant_id": "30075445"}

{"grades": [{"grade": "A", "score": 8}, {"grade": "B", "score": 23}], "name": "Wendy'S", "restaurant_id": "30112340"}

{"grades": [{"grade": "A", "score": 2}, {"grade": "A", "score": 11}], "name": "Dj Reynolds Pub And Restaurant", "restaurant_id": "30191841"}

我試過

db.restaurants.find({average_socre: {$gt: 5}}, {average_socre:{$avg: "$grades.score"}})

但它不起作用。

使用此查詢:

db.collection.find({
  $expr: {
    $gt: [
      {
        "$avg": "$grades.score"
      },
      5
    ]
  }
},
{
  average_score: {
    $avg: "$grades.score"
  }
})

居住

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM