[英]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.