MongoDB日期类型

在mongodb中创建日期的时候使用不同的方式创建的日期是不同的。

在mongodb中使用Date()创建的日期类型是一个字符串的类型,这个字符串中包含时区等数据 。使用new Date()创建的将会是ISODate类型的一个日期对象。同样我们可以使用ISODate()方式去创建日期对象,得到的结果是使用new Date相同的。下面是我在电脑上测试的: 
这里写图片描述
ISODate类型日期支持多种格式:

neu:PRIMARY> db.t2.insert({mydate:ISODate("2012-11-02 07:58:51")})

neu:PRIMARY> db.t2.insert({mydate:ISODate("20121102 07:58:51")})
neu:PRIMARY> db.t2.insert({mydate:ISODate("20121102")}) 

neu:PRIMARY> db.t2.find()
{ "_id" : ObjectId("50937ded0847cf5f01606dae"), "mydate" : ISODate("2012-11-02T07:58:51.718Z") }
{ "_id" : ObjectId("509380d22bb20f9946fb9004"), "mydate" : ISODate("2012-11-02T07:58:51Z") }
{ "_id" : ObjectId("509381052bb20f9946fb9005"), "mydate" : ISODate("2012-11-02T07:58:51Z") }
{ "_id" : ObjectId("509381102bb20f9946fb9006"), "mydate" : ISODate("2012-11-02T00:00:00Z") }
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

我们比较一下mongo中的当前时间与系统当前时间:

neu:PRIMARY> new Date() 
ISODate(“2012-11-02T08:13:10.250Z”) 
neu:PRIMARY> ^Z 
bye

C:>date 
当前日期: 2012-11-02 星期五 
输入新日期: (年月日)

C:>time 
当前时间: 16:13:14.95 
输入新时间:

我们看到,mongo中的时间似乎与系统时间相差了8个小时,why?

这是因为mongo中的date类型以UTC(Coordinated Universal Time)存储,就等于GMT(格林尼治标准时)时间。而系统时间使用的是GMT+0800时间,两者正好相差8个小时。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值