Computer >> 컴퓨터 >  >> 프로그래밍 >> MongoDB

MongoDB에서 필드의 데이터 유형을 확인하는 방법

MongoDB에서 저장된 문서의 각 필드가 어떤 데이터 유형을 가지고 있는지 확인해야 하는 경우가 종종 있습니다. 이럴 때 typeof 연산자를 사용하면 복잡한 설정 없이 손쉽게 필드의 데이터 유형을 파악할 수 있습니다.

typeof로 데이터 유형 확인하기

기본적인 사용 방법은 다음과 같습니다.

typeof db.yourCollectionName.findOne().yourFieldName;

findOne() 메서드로 문서 하나를 가져온 뒤, 확인하고 싶은 필드에 typeof를 적용하면 해당 필드의 데이터 유형이 문자열 형태로 반환됩니다.

예제: 테스트 컬렉션 생성

먼저 실습을 위해 문서가 포함된 컬렉션을 생성해 보겠습니다.

> db.findDataTypeDemo.insertOne({"ClientName":"Chris","isMarried":false});
{
    "acknowledged" : true,
    "insertedId" : ObjectId("5ccf2064dceb9a92e6aa1952")
}

저장된 문서 조회하기

다음은 findOne() 메서드를 사용하여 컬렉션에서 문서 하나를 조회하는 쿼리입니다.

> db.findDataTypeDemo.findOne();

이 명령은 다음과 같은 결과를 출력합니다.

{
    "_id" : ObjectId("5ccf2064dceb9a92e6aa1952"),
    "ClientName" : "Chris",
    "isMarried" : false
}

필드별 데이터 유형 조회

먼저 isMarried 필드의 데이터 유형을 확인해 보겠습니다.

> typeof db.findDataTypeDemo.findOne().isMarried;

실행 결과는 다음과 같습니다.

Boolean

이번에는 ClientName 필드의 데이터 유형을 확인해 보겠습니다.

> typeof db.findDataTypeDemo.findOne().ClientName;

실행 결과는 다음과 같습니다.

String

필드 값 자체 조회하기

데이터 유형뿐만 아니라 필드에 저장된 값 자체도 조회할 수 있습니다. 쿼리는 다음과 같습니다.

> db.findDataTypeDemo.findOne().ClientName;
Chris
> db.findDataTypeDemo.findOne().isMarried;
false

이처럼 typeoffindOne()을 조합하면 별도의 집계 파이프라인 없이도 각 필드의 데이터 유형과 값을 빠르게 확인할 수 있어, 스키마 검증이나 디버깅 작업 시 매우 유용합니다.