簡體   English   中英

MongoDB在嵌套對象上聚合

[英]MongoDB Aggregate on Nested Object

知道為什么它不能重現平均值(返回null)嗎?

Pattern.aggregate([
      { $match: {
          name: 'asdfaddf'
      }},
      { $unwind: "$ratings" },
      { $group : { _id: "test", ratings : {  $avg : "$ratings.rating" } } }

我的文件看起來像這樣

"ratings" : [ 
        {
            "rating" : "5",
            "userID" : "5a73ef842aed0f399ff4ee40",
            "_id" : ObjectId("5a74893230eed03f1ebf3c5f")
        }, 
        {
            "rating" : "3",
            "userID" : "awefawefawfawef",
            "_id" : ObjectId("5a74893230aad03f1ebf3c5e")
        }
    ],

看起來好像使用非數字值,因為mongodb文檔中的狀態將被忽略:

$ avg將忽略非數字值,包括缺失值。 如果平均值的所有操作數均為非數值,則$ avg返回null,因為未定義零值的平均值。

https://docs.mongodb.com/manual/reference/operator/aggregation/avg/#non-numeric-or-missing-values

暫無
暫無

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

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