mongodb projection with example
MongoDB의 프로젝션에 대한 심층보기 :
우리는 MongoDB의 집계 이전 튜토리얼의 다른 명령 및 연산자와 함께.
이 자습서에서는 MongoDB의 프로젝션에 대해 자세히 살펴 봅니다. 전체 문서가 아닌 전체 문서에서 선택한 필드 만 검색하려는 경우 투영을 사용합니다.
전체 범위 탐색 MongoDB 온라인 교육 자습서 .
MongoDB의 프로젝션
MongoDB에서 테이블은 '컬렉션', 행은 '문서', 열은 '필드'를 의미합니다.
간단히 말해서, 투영의 목적은 우리가 선택적 데이터를 찾는 데 도움이되는 것입니다. 엔터프라이즈 수준의 응용 프로그램을 다룰 때 엄청난 양의 기록을 갖게 될 것입니다. 이러한 레코드를 처리하는 데 많은 시간이 걸리므로 선택한 데이터 만 처리하면됩니다.
다음은 MongoDB에서 Projection을 사용하여 제한된 양의 데이터를 검색 할 수있는 샘플 구문입니다.
통사론:
db.DATA_COLLECTION_NAME.find({},{YOUR_FIELD_KEY:BOOLEAN})
이제 프로젝션을 처리하기위한 구문을 이해할 때입니다.
DATA_COLLECTION_NAME은 처리를 위해 레코드를 검색해야하는 테이블의 이름입니다.
다음은 MongoDB에서 Projection을 사용하여 제한된 양의 데이터를 검색 할 수있는 샘플 구문입니다.
- YOUR_FIELD_KEY는 테이블에서 처리 할 열 또는 엔티티의 이름입니다.
- BOOLEAN은 열 값을 표시하고 숨기는 검사입니다.
일부 데이터를 처리하여 투영의 깊이를 이해하기 위해 다음 예제를 살펴 보겠습니다. 다음 쿼리를 통해 pretty ()를 사용하여 읽기 가능한 형식으로 선택한 컬렉션에서 사용 가능한 모든 레코드를 검색합니다.
질문:
db.softwaretestinghelp.find().pretty()
여기 'softwaretestinghelp' 컬렉션의 이름입니다. 위 쿼리를 처리하면 다음과 같은 결과가 생성됩니다.
그림 1 : MongoDB Shell의 결과
그림 2 : Robo3T의 결과
이제 학생의 이름 만 검색해야하며 다른 모든 필드는 출력에 표시 할 필요가 없습니다. 따라서 여기에서 투영을 사용하여 전체 레코드 모집단에서 필요한 정보를 분리합니다.
다음 쿼리에서는 학생의 ID 만 검색하고 레코드에서 ObjectId를 숨길 것입니다.
질문:
db.softwaretestinghelp.find({}, {'_id': 0, 'student_id': 1})
이 쿼리는 'softwaretestinghelp'컬렉션에서 학생 ID 만 검색하고 다음 출력에서 볼 수있는 것처럼 ObjectId를 숨 깁니다.
그림 3 : MongoDB Shell의 결과
그림 4 : Robo3T의 결과
이 예에서는 레코드를 표시하기 위해 하나의 열 이름 만 사용했습니다. MongoDB의 프로젝션을 사용하여 여러 열 값을 표시하려면 아래 쿼리를 사용할 수 있습니다.
질문:
db.softwaretestinghelp.find({}, {'_id': 0, 'student_id': 1, 'student_age': 1})
Boolean 값이 1 인 열 이름이 여러 개인 쿼리를 처리하면 다음과 같은 결과가 표시됩니다.
그림 5 : MongoDB Shell의 결과
그림 6 : Robo3T의 결과
결론
MongoDB의 프로젝션 개념에 대해 명확하기를 바랍니다.
이제 데이터를 처리 할 수 있으며 열 값을 표시하고 숨기는 데 부울이 사용된다는 것을 알았습니다.
자바에서 문자열 배열 만들기
MongoDB의 정규식에 대해 자세히 알아 보려면 다가오는 자습서를 확인하십시오!