Mongodb时间字段更新$currentDate
2017-12-06 10:51
351 查看
一、$currentDate设置字段的值为当前时间,值为Date类型或者Timestamp时间戳类型,默认是Date类型
$currentDate操作符的使用格式是:
{ $currentDate: { <field1>: <typeSpecification1>, ... } }
<typeSpecification>字段可以是一个boolean true类型设置当前字段是日期Date类型,或者一个文档{ $type: "timestamp" }或者{ $type: "date" }根据指定的类型设置日期,该操作是只支持小写的timestamp和小写的date。
二、$currentDate操作符是只用在更新操作上,不可以用在insert操作,更新日期类型的字段时建议使用$currentDate操作符,因为它是直接取的数据库服务端的时间,而使用new Date()设置日期取的是当前服务器上的时间,容易造成误差。
三、考虑如下users集合文档
{ _id: 1, status: "a", lastModified: ISODate("2013-10-02T01:11:18.965Z") }
如下操作更新lastModified字段为当前时间,cancellation.date字段设置为当前时间戳,并且更新status字段和cancellation.reason字段。
db.users.update(
{ _id: 1 },
{
$currentDate: {
lastModified: true,
"cancellation.date": { $type: "timestamp" }
},
$set: {
status: "D",
"cancellation.reason": "user request"
}
}
)
更新的结果是:
{
"_id" : 1,
"status" : "D",
"lastModified" : ISODate("2014-09-17T23:25:56.314Z"),
"cancellation" : {
"date" : Timestamp(1410996356, 1),
"reason" : "user request"
}
}
$currentDate操作符的使用格式是:
{ $currentDate: { <field1>: <typeSpecification1>, ... } }
<typeSpecification>字段可以是一个boolean true类型设置当前字段是日期Date类型,或者一个文档{ $type: "timestamp" }或者{ $type: "date" }根据指定的类型设置日期,该操作是只支持小写的timestamp和小写的date。
二、$currentDate操作符是只用在更新操作上,不可以用在insert操作,更新日期类型的字段时建议使用$currentDate操作符,因为它是直接取的数据库服务端的时间,而使用new Date()设置日期取的是当前服务器上的时间,容易造成误差。
三、考虑如下users集合文档
{ _id: 1, status: "a", lastModified: ISODate("2013-10-02T01:11:18.965Z") }
如下操作更新lastModified字段为当前时间,cancellation.date字段设置为当前时间戳,并且更新status字段和cancellation.reason字段。
db.users.update(
{ _id: 1 },
{
$currentDate: {
lastModified: true,
"cancellation.date": { $type: "timestamp" }
},
$set: {
status: "D",
"cancellation.reason": "user request"
}
}
)
更新的结果是:
{
"_id" : 1,
"status" : "D",
"lastModified" : ISODate("2014-09-17T23:25:56.314Z"),
"cancellation" : {
"date" : Timestamp(1410996356, 1),
"reason" : "user request"
}
}
相关文章推荐
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate
- Mongodb时间字段更新$currentDate