문서 메뉴

문서 홈애플리케이션 개발VS 코드용 MongoDB

쿼리 또는 파이프라인을 언어로 내보내기

이 페이지의 내용

  • 전제 조건
  • 쿼리 문서 내보내기
  • 집계 파이프라인 내보내기

플레이그라운드 의 쿼리 문서와 집계 파이프라인을 프로그래밍 언어로 내보내고 번역할 수 있습니다. 쿼리와 파이프라인을 다음 언어로 내보낼 수 있습니다.

  • C#

  • Go

  • Java

  • Node.js

  • PHP

  • Python

  • Ruby

  • Rust

내보내려는 쿼리 문서 또는 파이프라인이 포함된 플레이그라운드를 열어야 합니다.

이 페이지의 튜토리얼에서는 기본 플레이그라운드 템플릿을 사용합니다.

기본 템플릿이 포함된 새 플레이그라운드를 열려면 다음을 수행합니다.

1

Visual Studio Code에서 다음 키 조합 중 하나를 누릅니다.

  • Control + Shift + P Windows 또는 Linux에서.

  • Command + Shift + P macOS에서.

Command Palette 를 사용하면 명령 및 키보드 단축키에 빠르게 액세스할 수 있습니다.

2

Command Palette 검색창을 사용하여 명령을 검색합니다. MongoDB for VS Code와 관련된 모든 명령 앞에는 MongoDB: 가 붙습니다.

MongoDB: Create MongoDB Playground 명령을 실행하면 MongoDB for VS Code가 몇 가지 명령으로 미리 구성된 기본 플레이그라운드 템플릿을 엽니다.

참고

템플릿 없이 새 플레이그라운드를 로드하려면 Use Default Template For Playground 설정을 비활성화합니다. MongoDB for VS Code 설정에 대해 자세히 알아보려면 MongoDB for VS Code 설정을 참조 하세요.

쿼리 문서를 내보내려면 다음을 수행합니다.

1

플레이그라운드 템플릿에서 쿼리 문서를 강조 표시합니다.

{ date: { $gte: new Date('2014-04-04'), $lt: new Date('2014-04-05') } }
2
  1. 코드를 강조 표시하면 백열전구 아이콘이 나타납니다. 아이콘을 클릭합니다.

  2. 상황에 맞는 메뉴에서 내보낼 언어를 선택합니다. MongoDB for VS Code는 선택한 언어로 강조 표시된 코드가 포함된 새 VS Code 창이 열립니다.

예를 들어 1단계에서 쿼리 문서를 Java로 내보내면 다음 코드가 생성됩니다.

new Document("date", new Document("$gte", new java.util.Date(1396569600000L))
.append("$lt", new java.util.Date(1396656000000L)))
3

내보낸 코드에 가져오기 문, 드라이버 구문 또는 둘 다를 포함할지 여부를 선택할 수 있습니다.

내보낸 코드가 포함된 새로 열린 VS Code 창 상단에서 Import StatementsDriver Syntax 토글을 사용하여 이러한 옵션을 제어합니다.

앞의 Java 코드에 대한 가져오기 문과 드라이버 구문을 모두 포함하면 다음과 같은 출력이 생성됩니다.

import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.conversions.Bson;
import java.util.concurrent.TimeUnit;
import org.bson.Document;
/*
* Requires the MongoDB Java Driver.
* https://mongodb.github.io/mongo-java-driver
*/
MongoClient mongoClient = new MongoClient(
new MongoClientURI(
"mongodb://localhost:27017/?readPreference=primary&appname=mongodb-vscode+0.7.0&directConnection=true&ssl=false"
)
);
MongoDatabase database = mongoClient.getDatabase("mongodbVSCodePlaygroundDB");
MongoCollection<Document> collection = database.getCollection("sales");
FindIterable<Document> result = collection.aggregate(new Document("date", new Document("$gte", new java.util.Date(1396569600000L))
.append("$lt", new java.util.Date(1396656000000L))));

참고

내보내기 옵션은 선택한 내보내기 언어에 따라 다릅니다.

집계 파이프라인을 내보내려면 다음을 수행합니다.

1

플레이그라운드 템플릿에서 집계 파이프라인을 강조 표시합니다.

[
{ $match: { date: { $gte: new Date('2014-01-01'), $lt: new Date('2015-01-01') } } },
{ $group: { _id: '$item', totalSaleAmount: { $sum: { $multiply: [ '$price', '$quantity' ] } } } }
]
2
  1. 코드를 강조 표시하면 백열전구 아이콘이 나타납니다. 아이콘을 클릭합니다.

  2. 상황에 맞는 메뉴에서 내보낼 언어를 선택합니다. MongoDB for VS Code는 선택한 언어로 강조 표시된 코드가 포함된 새 VS Code 창이 열립니다.

예를 들어 1단계에서 Java로 파이프라인을 내보내면 다음 코드가 생성됩니다.

Arrays.asList(new Document("$match",
new Document("date",
new Document("$gte",
new java.util.Date(1388534400000L))
.append("$lt",
new java.util.Date(1420070400000L)))),
new Document("$group",
new Document("_id", "$item")
.append("totalSaleAmount",
new Document("$sum",
new Document("$multiply", Arrays.asList("$price", "$quantity"))))))
3

내보낸 코드에 가져오기 문, 드라이버 구문 또는 둘 다를 포함할지 여부를 선택할 수 있습니다.

내보낸 코드가 포함된 새로 열린 VS Code 창 상단에서 Import StatementsDriver Syntax 토글을 사용하여 이러한 옵션을 제어합니다.

앞의 Java 코드에 대한 가져오기 문과 드라이버 구문을 모두 포함하면 다음과 같은 출력이 생성됩니다.

import java.util.Arrays;
import org.bson.Document;
import com.mongodb.MongoClient;
import com.mongodb.MongoClientURI;
import com.mongodb.client.FindIterable;
import com.mongodb.client.MongoCollection;
import com.mongodb.client.MongoDatabase;
import org.bson.conversions.Bson;
import java.util.concurrent.TimeUnit;
import org.bson.Document;
/*
* Requires the MongoDB Java Driver.
* https://mongodb.github.io/mongo-java-driver
*/
MongoClient mongoClient = new MongoClient(
new MongoClientURI(
"mongodb://localhost:27017/?readPreference=primary&appname=mongodb-vscode+0.7.0&directConnection=true&ssl=false"
)
);
MongoDatabase database = mongoClient.getDatabase("mongodbVSCodePlaygroundDB");
MongoCollection<Document> collection = database.getCollection("sales");
FindIterable<Document> result = collection.aggregate(Arrays.asList(new Document("$match",
new Document("date",
new Document("$gte",
new java.util.Date(1388534400000L))
.append("$lt",
new java.util.Date(1420070400000L)))),
new Document("$group",
new Document("_id", "$item")
.append("totalSaleAmount",
new Document("$sum",
new Document("$multiply", Arrays.asList("$price", "$quantity")))))));

참고

내보내기 옵션은 선택한 내보내기 언어에 따라 다릅니다.