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

프로젝션 빌더 클래스

The Projections class provides static factory methods for the MongoDB projection operators. Each method returns an instance of the Bson type, which can in turn be passed to any method that expects a projection.

다음 코드와 같이 Projections 클래스의 메서드를 정적으로 가져올 수 있습니다.

import org.mongodb.scala.model.Projections._

이 가이드의 예제에서는 이러한 정적 가져오기를 가정합니다.

기본적으로 각 문서의 모든 필드가 결과에 포함됩니다. _id 제외한 다른 모든 필드를 암시적으로 제외하는 하나 이상의 필드를 포함하도록 지정하려면 include() 메서드를 사용합니다.

다음 예제에는 quantity 필드와 암시적으로 _id 필드가 포함되어 있습니다.

include("quantity")

다음 예제에는 quantitytotalAmount 필드와 암시적으로 _id 필드가 포함됩니다.

include("quantity", "totalAmount")

다른 모든 필드를 암시적으로 포함하는 하나 이상의 필드 제외를 지정하려면 exclude() 메서드를 사용합니다.

다음 예시에서는 quantity 필드를 제외합니다:

include("수량")

다음 예시에서는 quantitytotalAmount 필드를 제외합니다.

exclude("quantity", "totalAmount")

_id 필드 제외를 지정하려면 excludeId() 메서드를 사용합니다.

excludeId()

이는 다음 코드와 동일합니다.

exclude("_id")

제공된 쿼리 필터와 일치하는 배열의 첫 번째 요소만 포함하는 프로젝션을 지정하려면 필드 이름과 필터를 사용하는 elemMatch() 메서드를 사용합니다.

다음 예제에서는 quantity 필드가 3 보다 큰 orders 배열 필드의 첫 번째 요소를 프로젝션합니다.

elemMatch("orders", Filters.gt("quantity", 3))

쿼리의 일부로 제공된 필터와 일치하는 배열의 첫 번째 요소만 포함하는 프로젝션을 지정하려면 필드 이름만 사용하는 elemMatch() 메서드를 사용합니다.

다음 예시에서는 쿼리 필터와 일치하는 orders 배열의 첫 번째 요소를 프로젝션합니다.

elemMatch("orders")

배열의 슬라이스를 프로젝션하려면 slice() 메서드 중 하나를 사용합니다.

다음 예제에서는 tags 배열의 첫 번째 7 요소를 프로젝션합니다.

slice("tags", 7)

다음 예제에서는 tags 배열의 처음 2 요소를 건너뛰고 다음 5 를 프로젝션합니다.

slice("tags", 2, 5)

$text 쿼리 점수의 프로젝션을 지정하려면 metaTextScore() 메서드를 사용하여 프로젝션된 필드의 이름을 지정합니다.

다음 예시에서는 텍스트 점수를 score 필드의 값으로 투영합니다.

metaTextScore("score")

여러 프로젝션을 결합하려면 필드 메서드를 사용합니다.

다음 예시에는 quantitytotalAmount 필드가 포함되어 있으며 _id 필드는 제외됩니다:

fields(include("quantity", "totalAmount"), excludeId())

돌아가기

필터 빌더 클래스

이 페이지의 내용