db.createView()참고
명확화
이 페이지에서는 표준 보기에 대해 설명합니다. 온디맨드 구체화된 뷰에 대한 설명은 온디맨드 구체화된 보기를 참조하세요.
뷰 유형 간의 차이점을 이해하려면 온디맨드 구체화된 뷰와의 비교를 참조하세요.
지정된 집계 파이프라인 을 소스 컬렉션 또는 뷰에 적용한 결과로 뷰를 만듭니다. 뷰는 읽기 전용 컬렉션 역할을 하며 읽기 작업 중에 온디맨드로 계산됩니다. 소스 컬렉션 과 동일한 데이터베이스 에 뷰를 만들어야 합니다. MongoDB 기본 집계 파이프라인 의 일부로 뷰에 대한 읽기 작업을 실행합니다.
보기 정의
pipeline에는$out또는$merge단계를 포함할 수 없습니다. 이 제한은$lookup단계 또는$facet단계에서 사용되는 파이프라인과 같은 임베디드 파이프라인에도 적용됩니다.
호환성
이 메서드는 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.
MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스
참고
이 명령은 모든 MongoDB Atlas 클러스터에서 지원됩니다. 모든 명령에 대한 Atlas 지원에 관해 자세히 알아보려면 지원되지 않는 명령을 참조하십시오.
MongoDB Enterprise: MongoDB의 구독 기반 자체 관리 버전
MongoDB Community: MongoDB의 소스 사용 가능 무료 자체 관리 버전
구문
db.createView 의 구문은 다음과 같습니다:
db.createView(<view>, <source>, <pipeline>, <collation>)
이 메서드에는 다음과 같은 매개 변수가 있습니다.
Parameter | 유형 | 설명 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 문자열 | 만들려는 뷰의 이름입니다. | ||||||||||
| 문자열 | 뷰를 생성할 소스 collection 또는 뷰의 이름입니다. 이름에는 데이터베이스 이름이 포함되지 않으며 생성할 뷰와 동일한 데이터베이스를 의미합니다. collection 또는 뷰의 전체 네임스페이스가 아닙니다. 소스 collection과 동일한 데이터베이스에 뷰를 생성해야 합니다. | ||||||||||
| 배열 | 집계 파이프라인 단계로 구성된 배열 입니다. 는 보기 정의 뷰 정의는 공개입니다. 즉, 뷰에 대한 | ||||||||||
| 문서 | 선택 사항입니다. 뷰의 기본 데이터 정렬을 지정합니다. 데이터 정렬을 사용하면 대소문자 및 악센트 표시 규칙과 같은 문자열 비교에 대한 언어별 규칙을 지정할 수 있습니다. 기본 데이터 정렬이 지정되지 않은 경우, 뷰의 기본 데이터 정렬은 'simple' 이진 비교 데이터 정렬기입니다. 기본 데이터 정렬 옵션의 구문은 다음과 같습니다: 데이터 정렬을 지정할 때 |
db.createView() 메서드는 다음 create 명령 작업을 래핑합니다.
db.runCommand( { create: <view>, viewOn: <source>, pipeline: <pipeline>, collation: <collation> } )
중요
컬렉션 목록 출력에 뷰 이름이 포함됨
db.getCollectionInfos() 및 db.getCollectionNames() 같이 컬렉션을 나열하는 연산은 출력에 뷰를 포함합니다.
뷰 정의는 공개입니다. 즉, 뷰에 대한 db.getCollectionInfos() 및 explain 작업에는 뷰를 정의하는 파이프라인이 포함됩니다. 따라서 뷰 정의에 민감한 필드와 값을 직접 참조하지 않는 것이 좋습니다.
예시
뷰를 생성하는 예시를 확인하려면 다음 페이지를 참고하세요.
행동
뷰의 동작 세부 정보를 보려면 동작을 참조하세요.