AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

집계 표현식의 변수

집계 표현식은 사용자 정의 변수와 시스템 변수를 모두 사용할 수 있습니다.

변수에는 모든 BSON types 데이터를 저장할 수 있습니다. 변수 값에 액세스하려면 변수 이름 앞에 이중 달러 기호($$)를 붙입니다. 즉, "$$<variable>".

변수가 객체를 참고하는 경우 객체의 특정 필드에 액세스하려면 점 표기법을 사용하세요. 즉, "$$<variable>.<field>".

사용자 변수 이름에는 [_a-zA-Z0-9] ASCII 문자와 ASCII가 아닌 모든 문자가 포함될 수 있습니다.

사용자 변수 이름은 ASCII 소문자 [a-z] 또는 ASCII 문자가 아닌 문자로 시작해야 합니다.

MongoDB는 다음과 같은 시스템 변수를 제공합니다:

변수
설명
NOW

현재 날짜/시간 값을 반환하는 변수입니다. NOW 는 배포서버의 모든 구성원에 대해 동일한 값을 반환하며 집계 파이프라인의 모든 단계에서 동일하게 유지됩니다.

CLUSTER_TIME

현재 타임스탬프 값을 반환하는 변수입니다.

CLUSTER_TIME 는 복제본 세트와 샤딩된 클러스터에서만 사용할 수 있습니다.

CLUSTER_TIME 배포의 모든 멤버에 대해 동일한 값을 반환하며 파이프라인의 모든 단계에서 동일하게 유지됩니다.

ROOT

현재 집계 파이프라인 단계에서 처리 중인 루트 문서, 즉 최상위 문서를 참조합니다.

CURRENT

집계 파이프라인 단계에서 처리되는 필드 경로의 시작을 참조합니다. 달리 문서화되지 않는 한 모든 단계는 ROOT와 동일하게 CURRENT로 시작됩니다.

CURRENT는 수정 가능합니다. 그러나 $<field>$$CURRENT.<field>와 동일하므로 CURRENT를 리바인딩하면 $ 액세스의 의미가 변경됩니다.

REMOVE

누락된 값으로 평가되는 변수입니다. $addFields$project 단계에서 필드를 제외할 수 있습니다.

$$REMOVE 사용 예시는 다음을 참조하십시오.

DESCEND

$redact 표현식의 허용된 결과 중 하나입니다.

PRUNE

$redact 표현식의 허용된 결과 중 하나입니다.

KEEP

$redact 표현식의 허용된 결과 중 하나입니다.

SEARCH_META

Atlas Search 쿼리의 메타데이터 결과를 저장하는 변수입니다. 모든 지원되는 집계 파이프라인 단계에서, 변수 $$SEARCH_META에 설정된 필드는 쿼리에 대한 메타데이터 결과를 반환합니다.

사용법의 예시는 MongoDB 검색 패싯개수를 참조하세요.

USER_ROLES

현재 사용자에게 할당된 역할을 반환합니다.

USER_ROLES 이 포함된 사용 사례에 대해서는, 찾기, 집계, 보기, updateOne, updateManyfindAndModify 예시를 참조하세요.

애그리게이션에 시스템 변수를 USER_ROLES 사용하는 것은 M0 및 Flex 클러스터에서 지원되지 않습니다.

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

IDX

현재 배열 요소의 인덱스 반환합니다. $map, $filter$reduce 표현식과 함께 사용할 수 있습니다. 첫 번째 배열 요소의 인덱스 는 0입니다. $$IDX 변수를 사용하려면 표현식 에서 arrayIndexAs 필드 생략합니다.

$$IDX 예제는 맵 인덱스 예시, 필터 인덱스 예시리듀스 인덱스 예시참조하세요.

버전 8.3에 추가 되었습니다.:

이 페이지의 내용