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

MongoDB에 포함된 문서 내에서 배열을 정렬하는 방법은 무엇입니까?

Patricia Arquette
Patricia Arquette원래의
2024-11-07 08:01:02982검색

How to Sort Arrays within Embedded Documents in MongoDB?

MongoDB의 임베디드 문서 내에서 배열 정렬

MongoDB로 작업할 때 임베디드 문서에 포함된 배열을 정렬해야 하는 경우가 많습니다. 이는 까다로운 작업일 수 있지만 다행히도 여러 가지 방법을 사용할 수 있습니다.

이 질문은 학생 기록 내의 "점수" 배열을 점수 내림차순으로 정렬하는 것과 관련이 있습니다. 제안된 솔루션은 Mongo 셸과 MongoDB 2.2에 도입된 새로운 기능인 Aggregation Framework를 사용합니다.

답변에 제공된 집계 쿼리는 여러 단계를 사용합니다.

  1. $match: 이 단계에서는 일치 기준을 사용하여 원하는 문서에 대한 컬렉션을 필터링합니다. 이 경우 _id가 1인 문서를 선택합니다.
  2. $unwind: 이 단계에서는 포함된 "점수" 배열을 분해하여 개별 문서 스트림으로 변환합니다. 각 문서에는 학생의 _id, 이름 및 단일 점수가 포함됩니다.
  3. $match: 이 단계에서는 "유형" 필드를 기준으로 해제된 문서를 필터링하고 "유형"이 있는 문서만 선택합니다. "homework"와 같습니다.
  4. $sort: 이 단계에서는 "scores" 포함 문서 내 "score" 필드의 내림차순으로 문서를 정렬합니다.

결과는 각 학생의 _id, 이름 및 최고 숙제 점수가 포함된 문서 세트입니다. Aggregation Framework는 더 복잡한 변환과 필터링을 허용하므로 MongoDB의 내장형 배열 작업을 위한 강력한 도구라는 점을 기억하는 것이 중요합니다.

위 내용은 MongoDB에 포함된 문서 내에서 배열을 정렬하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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