AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
See how MongoDB 9.0 delivers up to 2x higher throughput.
MongoDB Branding Shape
Register now >
Docs Menu

$ 중앙값 (표현식)

$median

버전 7.0에 추가 되었습니다.

숫자 값 배열 의 중앙값 (50번째 백분위 )을 반환합니다.

참고

명확화

이 페이지에서는 $median가 값 배열 의 중앙값 을 계산하는 표현식 으로 사용되는 경우에 대해 설명합니다.

다음과 같은 다른 컨텍스트에서도 $median를 사용할 수 있습니다.

{
$median: {
input: <expression>,
method: <string>
}
}
필드
유형
필요성
설명

input

배열

필수 사항

둘 중 하나를 사용하면 됩니다.

  • 배열 로 해석되는 표현식 입니다. 예시 들어 $grades이며 문서 필드 $grades에 숫자 값 배열 이 포함되어 있습니다.

  • 각 표현식이 숫자 값으로 평가되는 표현식의 배열 . 예시: [ "$field1", "$field2", "$field3" ].

$median 배열 에 있는 모든 값의 중앙값 을 계산합니다. 숫자가 아닌 값은 무시됩니다.

method

문자열

필수 사항

MongoDB 중앙값 을 계산하는 데 사용하는 방법입니다. 메서드는 'approximate'이어야 합니다.

$median 을 표현식 으로 사용하면 method: "approximate" 이 지정된 경우에도 근사치보다 항상 정확한 백분위 계산 알고리즘 사용합니다.

이는 표현식이 모든 입력 값을 메모리에 유지할 수 있는 제한된 크기의 배열에서 작동하기 때문입니다.

다음 예시 testScores 컬렉션 사용하여 $median의 배열 입력 형식을 보여줍니다.

testScores 컬렉션을 생성합니다.

db.testScores.insertMany( [
{ studentId: "2345", scores: [ 62, 81, 80, 75, 68 ] },
{ studentId: "2356", scores: [ 60, 83, 79, 72, 65 ] },
{ studentId: "2358", scores: [ 67, 82, 78, 70, 84 ] },
{ studentId: "2367", scores: [ 64, 72, 77, 58, 91 ] },
{ studentId: "2369", scores: [ 60, 53, 72, 85, 63 ] }
] )

다음 파이프라인 $median를 사용하여 각 학생의 시험 점수 중앙값 을 계산합니다:

db.testScores.aggregate( [
{
$project: {
_id: 0,
studentId: 1,
testMedians: {
$median: {
input: "$scores",
method: 'approximate'
}
}
}
}
] )

이전 파이프라인의 경우:

  • $median가 포함된 $project는 각 문서 의 scores 배열 에서 중앙값 을 찾아 testMedians로 반환합니다.

  • 각 결과는 해당 학생이 기록한 시험 점수의 중앙값 을 반영합니다.

이 페이지 평가하기