MongoDB에서 중첩 배열 정렬
문제:
MongoDB에 포함된 배열 필드를 어떻게 정렬합니까? 학생 컬렉션의 점수 배열과 같은 MongoDB 문서?
제안된 솔루션:
Mongo의 기본 정렬 기능의 제한으로 인해 애플리케이션 코드 또는 MongoDB 집계를 사용해야 합니다. 임베디드 배열을 조작하기 위한 프레임워크.
집계 프레임워크 솔루션:
MongoDB Aggregation Framework를 사용하면 다음 단계를 수행하여 점수 배열을 내림차순으로 정렬할 수 있습니다.
집계 예:
db.students.aggregate([ // Initial document match { $match: { _id : 1 }}, // Expand scores array { $unwind: '$scores' }, // Filter homework scores { $match: { 'scores.type': 'homework' }}, // Sort in descending order { $sort: { 'scores.score': -1 }} ])
출력(샘플):
{ "result" : [ { "_id" : 1, "name" : "Aurelia Menendez", "scores" : { "type" : "homework", "score" : 71.76133439165544 } }, { "_id" : 1, "name" : "Aurelia Menendez", "scores" : { "type" : "homework", "score" : 34.85718117893772 } } ], "ok" : 1 }
위 내용은 MongoDB에서 임베디드 배열 필드를 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!