이를 위해 집계()를 사용할 수 있습니다. 먼저 vlaue가 -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에 대한 "-Infinity" 결과를 가져오는 쿼리입니다. seq를 기반으로 평균을 찾았습니다. 결과는 -Infinity −
> db.demo5.aggregate([{$group:{"_id":"$seq", "average" : {$avg : "$Value"}}}]);
이것은 다음과 같은 출력을 생성합니다 -
{ "_id" : 20, "average" : 55 } { "_id" : 10, "average" : -Infinity }