Computer >> 컴퓨터 >  >> 프로그램 작성 >> MongoDB

MongoDB에서 배열 문서를 집계하는 방법은 무엇입니까?

<시간/>

이를 위해 집계 프레임워크를 사용합니다. 먼저 문서로 컬렉션을 생성해 보겠습니다. −

> db.aggregateArrayDemo.insertOne( { "_id":100, "UserDetails":[ { "UserName":"John", "UserLoginYear":2010 }, { "UserName":"Carol", "UserLoginYear" :2019 } ] });{ "승인됨" :true, "insertedId" :100 }

다음은 find() 메서드를 사용하여 컬렉션의 모든 문서를 표시하는 쿼리입니다. -

> db.aggregateArrayDemo.find().pretty();

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" :100, "UserDetails" :[ { "UserName" :"John", "UserLoginYear" :2010 }, { "UserName" :"Carol", "UserLoginYear" :2019 } ]} 

다음은 배열 문서를 집계하는 쿼리입니다 -

> db.aggregateArrayDemo.aggregate([ { $match:{ _id:100 } }, { $project:{ 최소값:{ $min:"$UserDetails.UserLoginYear" }, 최대값:{ $max:"$UserDetails .UserLoginYear" } } }]);

이것은 다음과 같은 출력을 생성합니다 -

{ "_id" :100, "최소" :2010, "최대" :2019 }