VS Code 로 집계 파이프라인 실행
이 페이지의 내용
VS Code 확장의 컬렉션에서 집계 파이프라인 을 실행 수 있습니다. 집계 파이프라인은 데이터를 프로세스 하고 계산된 결과를 반환하는 단계 로 구성됩니다.
집계가 일반적으로 사용되는 경우는 다음과 같습니다.
주어진 표현식을 기준으로 데이터를 그룹화.
여러 필드를 기반으로 결과를 계산하고 해당 결과를 새 필드에 저장.
데이터를 필터링하여 지정된 기준과 일치하는 하위 집합을 반환.
데이터 정렬.
집계 을 실행 하면 VS Code 확장이 Visual Studio Code 내에서 직접 결과를 편리하게 출력합니다.
플레이그라운드를 열어 집계 파이프라인 실행
MongoDB 플레이그라운드에서 집계 파이프라인을 실행 수 있습니다. MongoDB Playgrounds are JavaScript environments where you can prototype queries, aggregations, and MongoDB commands with helpful syntax highlighting.
새 MongoDB 플레이그라운드를 열려면 다음을 수행합니다.
'MongoDB 플레이그라운드 생성' 명령을 찾아 실행합니다.
Command Palette 검색 창을 사용하여 명령을 검색 합니다. VS Code 확장과 관련된 모든 명령 앞에는 MongoDB: 가 붙습니다.
MongoDB: Create MongoDB Playground 명령을 실행 하면 VS Code 확장이 몇 가지 명령으로 미리 구성된 기본값 플레이그라운드 템플릿을 엽니다.
참고
템플릿 없이 새 플레이그라운드를 로드하려면 Use Default Template For Playground 설정을 비활성화합니다. VS Code 확장 설정에 대해 자세히 알아보려면 Visual Studio Code 설정을 참조하세요.
집계 파이프라인 생성 및 실행
집계 파이프라인 을 만들려면 플레이그라운드에서 다음 구문을 사용하세요.
db.<collection>.aggregate([ { <$stage1> }, { <$stage2> } ... ])
플레이그라운드를 실행하려면 플레이그라운드 보기의 오른쪽 상단에서 Play Button을 누르세요. VS Code 확장은 플레이그라운드를 분할하고 플레이그라운드 결과를 Playground Results.json 창에 출력합니다. 분할 보기를 비활성화한 경우 VS Code 확장은 플레이그라운드 결과를 새 탭에 출력합니다.
예시
이 예제를 실행하려면 로드된 템플릿 플레이그라운드가 있다면 이를 지우고 빈 MongoDB 플레이그라운드로 시작하세요.
컬렉션 에 샘플 데이터를 삽입하고 해당 데이터를 집계하는 다음 플레이그라운드를 가정해 보겠습니다.
use("test"); db.sales.insertMany([ { "_id" : 1, "item" : "abc", "price" : 10, "quantity" : 2, "date" : new Date("2014-03-01T08:00:00Z") }, { "_id" : 2, "item" : "jkl", "price" : 20, "quantity" : 1, "date" : new Date("2014-03-01T09:00:00Z") }, { "_id" : 3, "item" : "xyz", "price" : 5, "quantity" : 10, "date" : new Date("2014-03-15T09:00:00Z") }, { "_id" : 4, "item" : "xyz", "price" : 5, "quantity" : 20, "date" : new Date("2014-04-04T11:21:39.736Z") }, { "_id" : 5, "item" : "abc", "price" : 10, "quantity" : 10, "date" : new Date("2014-04-04T21:23:13.331Z") }, { "_id" : 6, "item" : "def", "price" : 7.5, "quantity": 5, "date" : new Date("2015-06-04T05:08:13Z") }, { "_id" : 7, "item" : "def", "price" : 7.5, "quantity": 10, "date" : new Date("2015-09-10T08:43:00Z") }, { "_id" : 8, "item" : "abc", "price" : 10, "quantity" : 5, "date" : new Date("2016-02-06T20:20:13Z") } ]) db.sales.aggregate([ { $match: { date: { $gte: new Date("2014-01-01"), $lt: new Date("2015-01-01") } } }, { $group: { _id: "$item", totalSaleAmount: { $sum: { $multiply: [ "$price", "$quantity" ] } } } } ])
이 파이프라인은 다음을 수행합니다.
test
데이터베이스로 전환하세요.test.sales
컬렉션에 문서 8개를 삽입합니다.두 단계로 집계 을 수행합니다.
Play Button 키를 누르면 VS Code 확장이 플레이그라운드를 분할하고 Playground Results.json 창에 다음 문서 를 출력합니다. 분할 보기를 비활성화한 경우 VS Code 확장은 새 탭 에 다음 문서 를 출력합니다.
[ { _id: 'abc', totalSaleAmount: 120 }, { _id: 'jkl', totalSaleAmount: 20 }, { _id: 'xyz', totalSaleAmount: 150 } ]
팁
다음도 참조하세요.
사용 가능한 집계 단계에 대해 자세히 알아보려면 집계 파이프라인 단계 를 참조하세요.
단계에서 사용할 수 있는 집계 연산자에 대해 자세히 알아보려면 집계 파이프라인 연산자를 참조하세요.