如何在聚合查詢中獲得 $avg 的“-無窮”結果?
為此,您可以使用 aggregate()。讓我們首先建立一個包含無窮小值(-infinity)作為值的文件集合 −
> db.demo5.insertOne({ "_id" : 100, "seq" : 10, "Value" : -Infinity });
{ "acknowledged" : true, "insertedId" : 100 }
> db.demo5.insertOne({ "_id" : 101, "seq" : 10, "Value" : 50 });
{ "acknowledged" : true, "insertedId" : 101 }
> db.demo5.insertOne({ "_id" : 102, "seq" : 20, "Value" : 60 });
{ "acknowledged" : true, "insertedId" : 102 }
> db.demo5.insertOne({ "_id" : 103, "seq" : 20, "Value" : 50 });
{ "acknowledged" : true, "insertedId" : 103 }以下是使用 find() 方法顯示某個集合中所有文件的查詢 −
> db.demo5.find();
這將產生以下輸出 &miuns;
{ "_id" : 100, "seq" : 10, "Value" : -Infinity }
{ "_id" : 101, "seq" : 10, "Value" : 50 }
{ "_id" : 102, "seq" : 20, "Value" : 60 }
{ "_id" : 103, "seq" : 20, "Value" : 50 }以下是針對聚合查詢中 $avg 獲取“-無窮”結果的查詢。基於 seq,找到了平均值。這將得到 -Infinity −
> db.demo5.aggregate([{$group:{"_id":"$seq", "average" : {$avg : "$Value"}}}]);這將產生以下輸出 −
{ "_id" : 20, "average" : 55 }
{ "_id" : 10, "average" : -Infinity }
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP