Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/ / /
Node.js 드라이버
/

집계 파이프라인 단계

이 가이드 에서는 MongoDB Node.js 운전자 의 메서드를 사용하여 집계 파이프라인 과 파이프라인 단계를 만드는 방법을 학습 수 있습니다.

Node.js 운전자 사용하면 파이프라인 변수를 생성하거나 집계 단계를 집계 메서드에 직접 전달하여 집계 파이프라인 빌드 할 수 있습니다. 이러한 각 접근 방식에 대해 자세히 학습 다음 예시를 참조하세요.

// Defines the aggregation pipeline
const pipeline = [
{ $match: { ... } },
{ $group: { ... } }
];
// Executes the aggregation pipeline
const results = await collection.aggregate(pipeline);
// Defines and executes the aggregation pipeline
const results = await collection.aggregate([
{ $match: { ... } },
{ $group: { ... } }
]);

다음 표에는 집계 파이프라인 의 단계가 나열되어 있습니다. 집계 단계에 대해 자세히 학습 Node.js 애플리케이션 의 코드 예시 보려면 MongoDB Server 매뉴얼의 단계 이름에 있는 해당 참조 페이지 링크를 따라가세요.

단계
설명

$addFields

문서에 새 필드를 추가합니다. 입력 문서의 기존 필드와 새로 추가된 필드를 모두 포함하는 문서를 출력합니다.

$set $addFields의 별칭입니다.

지정된 표현식과 버킷 경계를 기반으로 수신 문서를 버킷이라는 그룹으로 분류합니다.

지정된 표현식을 기반으로 수신 문서를 버킷이라는 특정 수의 그룹으로 분류합니다. 버킷 경계는 지정된 수의 버킷에 문서를 고르게 분산할 수 있도록 자동으로 결정됩니다.

컬렉션 에 대한 변경 스트림 커서 반환합니다. 파이프라인 의 첫 번째 단계여야 합니다.

$changeStream aggregate() 메서드에 전달되면 AggregationCursor 를 반환하고 watch() 메서드에 전달되면 ChangeStreamCursor 를 반환합니다.

16 MB를 초과하는 대규모 변경 스트림 이벤트를 변경 스트림 커서 에 반환되는 작은 조각으로 분할합니다. 파이프라인 의 마지막 단계여야 합니다.

$changeStreamSplitLargeEvent aggregate() 메서드에 전달되면 AggregationCursor 를 반환하고 watch() 메서드에 전달되면 ChangeStreamCursor 를 반환합니다.

단계 또는 뷰에 관한 통계를 반환합니다.

집계 파이프라인의 이 단계에 있는 문서 수를 반환합니다.

활성 및 휴면 작업과 트랜잭션 의 일부로 잠금을 유지하고 있는 비활성 세션에 대한 정보가 포함된 문서 스트림 반환합니다.

필드의 특정 값이 누락된 문서 시퀀스에서 새 문서를 만듭니다.

입력 표현식에서 리터럴 문서를 반환합니다.

동일한 입력 문서 세트의 단일 단계에서 여러 집계 파이프라인을 처리합니다. 단일 단계에서 여러 차원 또는 패싯에 걸쳐 데이터를 특성화할 수 있는 다면적 집계를 생성할 수 있습니다.

지정된 점 에서 가장 가까운 것부터 가장 먼 것 순으로 문서를 반환합니다. 이 메서드는 지정된 점 으로부터의 거리를 포함하는 출력 문서에 필드 추가합니다.

컬렉션 에 대해 재귀 검색 수행합니다. 이 메서드는 해당 문서 에 대한 재귀 검색 의 순회 결과를 포함하는 각 출력 문서 에 새 배열 필드 추가합니다.

지정된 식별자 표현식 으로 입력 문서를 그룹화하고, 지정된 경우 축적자 표현식을 각 그룹 에 적용합니다. 모든 입력 문서를 소비하고 각 고유 그룹 하나의 문서 출력합니다. 출력 문서에는 식별자 필드 와 누적된 필드(지정된 경우)만 포함됩니다.

컬렉션의 각 인덱스 사용에 관한 통계를 반환합니다.

수정되지 않은 처음 n 개의 문서를 파이프라인에 전달하며, 여기서 n 은 지정된 제한입니다. 각 입력 문서 에 대해 문서 1개(처음 n 개 문서에 대해) 또는 문서 0개(처음 n 개 문서 이후)를 출력합니다.

모든 컬렉션 또는 특정 컬렉션 에 대해 샘플링된 쿼리를 나열합니다. Queryable Encryption 활성화된 컬렉션에만 사용할 수 있습니다.

지정된 컬렉션의 기존 Atlas Search 인덱스 에 대한 정보를 반환합니다.

동일한 데이터베이스의 다른 컬렉션에 왼쪽 외부 조인을 수행하여 '조인된(joined)' 컬렉션의 문서를 필터링해 처리합니다.

일치하는 문서만 수정되지 않은 상태로 다음 파이프라인 단계로 전달될 수 있도록 문서 스트림을 필터링합니다. 각 입력 문서에서 하나의 문서(일치하는 문서) 또는 0개의 문서(일치하지 않는 문서)를 출력합니다.

집계 파이프라인 의 결과 문서를 컬렉션 에 씁니다. 이 단계에서는 (새 문서 삽입, 문서 병합, 문서 교체, 기존 문서 유지, 작업 실패, 사용자 지정 업데이트 파이프라인 으로 문서 프로세스 ) 결과를 출력 컬렉션 에 통합할 수 있습니다. 이 단계를 사용하려면 파이프라인 의 마지막 단계여야 합니다.

집계 파이프라인 의 결과 문서를 컬렉션 에 씁니다. 이 단계를 사용하려면 파이프라인 의 마지막 단계여야 합니다.

새 필드를 추가하거나 기존 필드를 제거하는 등 스트림의 각 문서 모양을 변경합니다. 각 입력 문서에 대해 하나의 문서를 출력합니다.

문서 자체에 저장된 정보를 기반으로 각 문서 의 콘텐츠를 제한하여 스트림 의 각 문서 재구성합니다. $project$match의 기능을 통합합니다. 필드 수준 편집을 구현 데 사용할 수 있습니다. 각 입력 문서 에 대해 1개 또는 0개의 문서를 출력합니다.

문서를 특정 내장된 문서로 바꿉니다. 이 작업은 _id 필드를 포함하여 입력 문서의 모든 기존 필드를 대체합니다. 입력 문서에 내장된 문서를 지정하여 내장된 문서를 최상위 수준으로 승격합니다.

$replaceWith 단계는 $replaceRoot 단계의 별칭입니다.

문서를 특정 내장된 문서로 바꿉니다. 이 작업은 _id 필드를 포함하여 입력 문서의 모든 기존 필드를 대체합니다. 입력 문서에 내장된 문서를 지정하여 내장된 문서를 최상위 수준으로 승격합니다.

$replaceWith 단계는 $replaceRoot 단계의 별칭입니다.

입력에서 지정된 수의 문서를 임의로 선택합니다.

Atlas 컬렉션에서 하나 이상의 필드에 대한 전체 텍스트 검색을 수행합니다.

이 단계는 MongoDB Atlas 클러스터에서만 사용할 수 있으며 자체 관리형 배포서버에는 사용할 수 없습니다. 자세히 학습하려면 Atlas 문서에서 Atlas Search 집계 파이프라인 단계 를 참조하세요.

Atlas 컬렉션에 대한 Atlas Search 쿼리에 대해 다양한 유형의 메타데이터 결과 문서를 반환합니다.

이 단계는 MongoDB Atlas 클러스터에서만 사용할 수 있으며 자체 관리형 배포서버에는 사용할 수 없습니다. 자세히 학습하려면 Atlas 문서에서 Atlas Search 집계 파이프라인 단계 를 참조하세요.

문서에 새 필드를 추가합니다. Project() 메서드와 마찬가지로 이 메서드는 입력 문서의 기존 필드와 새로 추가된 필드를 모두 포함하는 출력 문서에 새 필드를 추가하여 스트림 의 각 문서 재구성합니다.

문서를 창으로 그룹화하고 각 창의 문서에 하나 이상의 연산자를 적용합니다.

처음 n 개의 문서를 건너뛰고(여기서 n 은 지정된 건너뛰기 번호) 나머지 문서는 수정되지 않은 상태로 파이프라인에 전달됩니다. 각 입력 문서에 대해 문서 0개(처음 n 개 문서에 대해) 또는 문서 1개(처음 n 개 문서 이후인 경우)를 출력합니다.

지정된 정렬 키를 기준으로 문서 스트림 다시 정렬합니다. 문서는 수정되지 않은 상태로 유지됩니다. 각 입력 문서 에 대해 하나의 문서 출력합니다.

지정된 표현식의 값을 기준으로 들어오는 문서를 그룹화한 다음 각 고유 그룹의 문서 수를 계산합니다.

두 컬렉션의 파이프라인 결과를 단일 결과 설정하다 로 결합합니다.

문서에서 필드를 제거/제외합니다.

$unset 필드를 제거하는 $project 의 별칭입니다.

입력 문서에서 배열 필드 분해하여 요소에 대한 문서 출력합니다. 각 출력 문서 배열 요소 값으로 바꿉니다. 각 입력 문서에 대해 n 문서를 출력하며, 여기서 n 은 배열 요소의 개수입니다. 빈 배열 의 경우 n 은 0일 수 있습니다.

Atlas 컬렉션의 지정된 필드에 있는 벡터에서 근사 최근접 이웃 또는 등가 최근접 이웃검색을 수행합니다.

이 단계는 MongoDB Atlas 클러스터에서만 사용할 수 있으며 자체 관리형 배포서버에는 사용할 수 없습니다. 자세히 학습 Atlas Vector Search 참조하세요.

집계 파이프라인 어셈블에 대해 자세히 학습하려면 MongoDB Server 매뉴얼에서 집계 파이프라인 을 참조하세요.

파이프라인 단계 생성에 학습 보려면 MongoDB Server 매뉴얼의 애그리게이션 단계 를 참조하세요.

이 페이지에 사용된 메서드 및 클래스에 대한 자세한 내용은 다음 API 설명서를 참조하세요.

돌아가기

집계

이 페이지의 내용