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

하나의 MongoDB 집계 쿼리에서 정렬 및 그룹화?

<시간/>

단일 쿼리에서 정렬 및 그룹화하려면 집계 프레임워크와 함께 $group 연산자를 사용합니다. 먼저 문서로 컬렉션을 만들어 보겠습니다. −

> db.sortAndGroupDemo.insertOne({ 가격:40, 제품:10});{ "승인됨" :true, "insertedId" :ObjectId("5ce8f2bc78f00858fb12e907")}> db.sortAndGroupDemo.insertOne({ 가격:1000) , 제품:10});{ "승인됨" :true, "insertedId" :ObjectId("5ce8f2bc78f00858fb12e908")}> db.sortAndGroupDemo.insertOne({ 가격:90, 제품:20});{ "승인됨" :true, "insertedId":ObjectId("5ce8f2bc78f00858fb12e909")}> db.sortAndGroupDemo.insertOne({ 가격:200, 제품:10});{ "확인됨":true, "insertedId":ObjectId("85ce8f2ebc5) sortAndGroupDemo.insertOne({ 가격:70, 제품:20});{ "acknowledged":true, "insertedId":ObjectId("5ce8f2bc78f00858fb12e90b")}> db.sortAndGroupDemo.insertOne({ 가격:70}), 제품:;{ "승인됨" :true, "insertedId" :ObjectId("5ce8f2bd78f00858fb12e90c")}

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

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

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

{ "_id" :ObjectId("5ce8f2bc78f00858fb12e907"), "가격" :40, "제품" :10}{ "_id" :ObjectId("5ce8f2bc78f00858fb1008"), "가격" :제품 }{ "_id":ObjectId("5ce8f2bc78f00858fb12e909"), "가격":90, "제품":20}{ "_id":ObjectId("5ce8f2bc78f00858fb12e90a"), "가격":20 "_id":ObjectId("5ce8f2bc78f00858fb12e90b"), "가격":70, "제품":20}{ "_id":ObjectId("5ce8f2bd78f00858fb12e90c"), "제품":70,> 

다음은 단일 MongoDB 집계 쿼리에서 정렬 및 그룹화하는 쿼리입니다 -

> db.sortAndGroupDemo.aggregate( [ { "$group":{ "_id":"$Product" }}, { "$sort" :{ "가격":1 }}, { "$project":{"_id":1 }} ]);

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

{ "_id" :30 }{ "_id" :20 }{ "_id" :10 }