>  기사  >  웹 프론트엔드  >  MongoDB 컬렉션에 포함된 배열을 정렬하는 방법은 무엇입니까?

MongoDB 컬렉션에 포함된 배열을 정렬하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-07 07:27:03227검색

How to Sort Embedded Arrays in MongoDB Collections?

MongoDB 컬렉션에 포함된 배열 정렬

문제:

MongoDB 컬렉션이 있습니다. 학생 기록은 각각 내장된 점수 배열을 포함합니다. 특정 문서에 대해 점수의 내림차순으로 점수 배열을 정렬하려고 합니다.

해결책:

내장된 배열을 정렬하려면 사용자 정의 애플리케이션 코드 중 하나를 사용할 수 있습니다. 또는 MongoDB 2.2에 도입된 Aggregation Framework.

Aggregation Framework 사용:

다음 MongoDB 쉘 집계 파이프라인은 _id가 1인 문서의 점수 배열을 내림차순으로 정렬합니다. 점수:

db.students.aggregate(
    { $match: {
        _id : 1
    }},
    { $unwind: '$scores' },
    { $match: {
        'scores.type': 'homework'
    }},
    { $sort: {
        'scores.score': -1
    }}
)

출력:

이 집계는 _id 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 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.