数据类型 | 序号 | 别名 | 备注 |
---|---|---|---|
Double | 1 | double | |
String | 2 | string | |
Object | 3 | object | |
Array | 4 | array | |
Binary data | 5 | binData | |
Undefined | 6 | undefined | 弃用 |
ObjectId | 7 | objectId | |
Boolean | 8 | bool | |
Date | 9 | date | |
Null | 10 | null | |
Regular Expression | 11 | regex | |
DBPointer | 12 | dbPointer | 弃用 |
JavaScript | 13 | javascript | |
Symbol | 14 | symbol | 弃用 |
JavaScript code with scope | 15 | javascriptWithScope | 4.4 弃用 |
32-bit integer | 16 | int | |
Timestamp | 17 | timestamp | |
64-bit integer | 18 | long | |
Decimal128 | 19 | decimal | |
Min key | -1 | minKey | |
Max key | 127 | maxKey |
到时候想通过 $type 来指定某个数据类型的时候可以用序号,而不用敲完整的字符串
可以看到,通过 $type 来指定数据类型的时候,可以用别名,也可以用序号
ObjectId 很小,可能是唯一的,生成速度快,并且有序,ObjectId 值的长度为 12 个字节,包括
ObjectId("60b441609c297cd9d2ecf60f").getTimestamp()
ISODate("2021-05-31T01:52:32Z")
在插入包含具有空时间戳值的顶级字段的文档时,MongoDB将用当前时间戳值替换空时间戳值
db.myNewCollection1.insert({test:new timestamp()})
db.myNewCollection1.find()
{ "_id" : ObjectId("542c2b97bac0595474108b48"), "ts" : Timestamp(1412180887, 1) }
BSON Date 是一个 64 位整数,表示自 Unix 纪元(1970 年 1 月 1 日)以来的毫秒数
var mydate1 = new Date()
var mydate2 = ISODate()
两种函数构造的 Date,值是同个类型的
mydate1.toString()
月是零索引,因此一月是月0
mydate1.getMonth()
后续再展开讲