Hướng dẫn mongodb type aggregate - loại mongodb tổng hợp

Tài liệu về nhà → Hướng dẫn sử dụng MongoDBMongoDB Manual

$type return một chuỗi chỉ định loại BSON của đối số.

Returns a string that specifies the BSON type of the argument.

$type có cú pháp biểu thức toán tử sau: has the following operator expression syntax:

Đối số có thể là bất kỳ biểu thức hợp lệ.

Mẹo

Xem thêm:

  • $isNumber - Kiểm tra xem đối số là một số. Mới trong MongoDB 4.4

  • $type [Query] - Các trường lọc dựa trên loại BSON.

Không giống như toán tử truy vấn $type, phù hợp với các phần tử mảng dựa trên loại BSON của chúng, toán tử tập hợp $type không kiểm tra các phần tử mảng. Thay vào đó, khi được thông qua một mảng làm đối số của nó, toán tử tập hợp $type trả về loại đối số, tức là

db.coll.aggregate[[{
$project: {
a : { $type: "$a" }
}
}]]
0.$type aggregation operator does not examine array elements. Instead, when passed an array as its argument, the $type aggregation operator returns the type of the argument, i.e.
db.coll.aggregate[[{
$project: {
a : { $type: "$a" }
}
}]]
0.

Nếu đối số là một trường bị thiếu trong tài liệu đầu vào, $type sẽ trả về chuỗi

db.coll.aggregate[[{
$project: {
a : { $type: "$a" }
}
}]]
2.$type returns the string
db.coll.aggregate[[{
$project: {
a : { $type: "$a" }
}
}]]
2.

Bảng sau đây cho thấy đầu ra $type cho một số loại biểu thức phổ biến:$type output for several common types of expressions:

Thí dụ

Kết quả

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

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

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

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

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

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

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

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

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

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

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

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

Ghi chú

Trong trường hợp của một mảng theo nghĩa đen như

{ _id: 0, "a" : "double" }
{ _id: 1, "a" : "array" }
{ _id: 2, "a" : "object" }
{ _id: 3, "a" : "string" }
{ _id: 4, "a" : "long" }
{ _id: 5, "a" : "missing" }
6, đặt biểu thức trong một bộ ngoặc mảng bên ngoài để ngăn MongoDB phân tích cú pháp
{ _id: 0, "a" : "double" }
{ _id: 1, "a" : "array" }
{ _id: 2, "a" : "object" }
{ _id: 3, "a" : "string" }
{ _id: 4, "a" : "long" }
{ _id: 5, "a" : "missing" }
6 như một danh sách đối số với ba đối số [
{ _id: 0, "a" : "double" }
{ _id: 1, "a" : "array" }
{ _id: 2, "a" : "object" }
{ _id: 3, "a" : "string" }
{ _id: 4, "a" : "long" }
{ _id: 5, "a" : "missing" }
8]. Bao bọc mảng
{ _id: 0, "a" : "double" }
{ _id: 1, "a" : "array" }
{ _id: 2, "a" : "object" }
{ _id: 3, "a" : "string" }
{ _id: 4, "a" : "long" }
{ _id: 5, "a" : "missing" }
6 trong biểu thức $type0 đạt được kết quả tương tự.

Xem biểu mẫu cú pháp biểu thức toán tử để biết thêm thông tin.

Loại hình

Con số

Bí danh

Ghi chú

Kép

1

"double"

Sợi dây

2

"string"

Sự vật

3

"object"

Mảng

4

"array"

Dữ liệu nhị phân

5

"binData"

Chưa xác định

6

"undefined"

Deprecated.

ID đối tượng

7

"objectId"

Boolean

8

"bool"

Ngày

9

"date"

Vô giá trị

10

"null"

Biểu hiện thông thường

11

"regex"

DBPulum

12

"dbPointer"

Deprecated.

JavaScript

13

"javascript"

Biểu tượng

14

"symbol"

Deprecated.

Mã JavaScript có phạm vi

15

"javascriptWithScope"

Khấu hao trong MongoDB 4.4.

Số nguyên 32 bit

16

"int"

Dấu thời gian

17

"timestamp"

Số nguyên 64 bit

18

"long"

Decimal128

19

"decimal"

Khóa tối thiểu

-1

"minKey"

Phím tối đa

127

"maxKey"

Nếu đối số là một trường bị thiếu trong tài liệu đầu vào, $type sẽ trả về chuỗi

db.coll.aggregate[[{
$project: {
a : { $type: "$a" }
}
}]]
2.$type returns the string
db.coll.aggregate[[{
$project: {
a : { $type: "$a" }
}
}]]
2.

Bảng sau đây cho thấy đầu ra $type cho một số loại biểu thức phổ biến:

{ _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 }

Thí dụ

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

Kết quả

Ghi chú

Chủ Đề