Docs Menu
Docs Home
/
MongoDB 매뉴얼
/ / /

$type (집계)

이 페이지의 내용

  • 정의
  • 행동
  • 예시
$type

string 인수의 를 BSON 지정하는 을 반환합니다.

$type에는 다음과 같은 연산자 표현식 구문이 있습니다.

{ $type: <expression> }

인수는 유효한 표현식일 수 있습니다.

다음도 참조하세요.

  • $isNumber - 인수가 숫자인지 확인합니다.

  • $type (Query) - BSON types을(를) 기준으로 필드를 필터링합니다.

$type 쿼리 연산자는 배열 요소를 BSON 유형에 따라 일치시키는 것과 달리 $type 집계 연산자는 배열 요소를 검사하지 않습니다. 대신 배열을 인수로 전달하면 $type 집계 연산자는 인수의 유형(예: "array")을 반환합니다.

인수가 입력 문서에 누락된 필드인 경우 $type은 문자열 "missing"을 반환합니다.

다음 테이블은 몇 가지 일반적인 표현식 유형의 $type 출력을 보여 줍니다.

예시
결과

{ $type: "a" }

"string"

{ $type: /a/ }

"regex"

{ $type: 1 }

"double"

{ $type: NumberLong(627) }

"long"

{ $type: { x: 1 } }

"object"

{ $type: [ [ 1, 2, 3 ] ] }

"array"

참고

[ 1, 2, 3 ] [ 1, 2, 3 ] 0}과1, 2, 3 같은 리터럴 배열의 경우, 표현식을 바깥쪽 배열 괄호로 묶어 MongoDB가 을 3개의 인수( )가 있는 인수 목록으로 구문 분석하지 못하도록 합니다. 배열 [ 1, 2, 3 ]$literal 표현식으로 래핑해도 동일한 결과를 얻을 수 있습니다.

자세한 내용은 연산자 표현식 구문 형식을 참조하세요.

유형
번호
별명
참고 사항

Double

1

"double"

문자열

2

"문자열"

객체

3

"객체"

배열

4

"배열"

이진 데이터

5

"binData"

정의되지 않음

6

"정의되지 않음"

더 이상 사용되지 않습니다.

ObjectId

7

"objectId"

부울

8

"bool"

날짜

9

'날짜'

Null

10

"null"

정규 표현식

11

"정규식"

DB포인터

12

"dbPointer"

더 이상 사용되지 않습니다.

JavaScript

13

"javascript"

기호

14

"기호"

더 이상 사용되지 않습니다.

32비트 정수

16

"in"

타임스탬프

17

"타임스탬프"

64비트 정수

18

"long"

Decimal128

19

"십진수"

Min key

-1

" 밍키 "

최대 키

127

"최대 키"

인수가 입력 문서에 누락된 필드인 경우 $type은 문자열 "missing"을 반환합니다.

이 예에서는 coll 라는 이름의 컬렉션과 다음 문서를사용합니다:

{ _id: 0, a : 8 }
{ _id: 1, a : [ 41.63, 88.19 ] }
{ _id: 2, a : { a : "apple", b : "banana", c: "carrot" } }
{ _id: 3, a : "caribou" }
{ _id: 4, a : NumberLong(71) }
{ _id: 5 }

다음 집계 작업에서는 $type 연산자를 사용하여 모든 문서에 대한 필드 a 유형을 $project 단계의 일부로 표시합니다.

db.coll.aggregate([{
$project: {
a : { $type: "$a" }
}
}])

이 연산은 다음을 반환합니다:

{ _id: 0, "a" : "double" }
{ _id: 1, "a" : "array" }
{ _id: 2, "a" : "object" }
{ _id: 3, "a" : "string" }
{ _id: 4, "a" : "long" }
{ _id: 5, "a" : "missing" }

돌아가기

$trunc

이 페이지의 내용