mongodb的日期类型,其他语言怎么插入这个类型的值啊?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了mongodb的日期类型,其他语言怎么插入这个类型的值啊?相关的知识,希望对你有一定的参考价值。

mongodb的日期类型,其他语言怎么插入这个类型的值啊?

按正常的DateTime类型就行,以C#(mogodb官方驱动)举例

    查询:Query.GT("beginDate", new BsonDateTime(DateTime.Now.AddDays(-20)))

    下面是添加记录的方法 model里定义成DateTime类型,插入后自然就是你要的:

    public static WriteConcernResult InsertOne<T>(string connectionString, string databaseName, string collectionName, T entity)
            
                WriteConcernResult result = null;// new SafeModeResult();
                if (null == entity)
                
                    return null;
                
                GetServer(connectionString);
                GetDatabase(databaseName);
                using (_server.RequestStart(_database))//开始连接数据库。
                
                    MongoCollection<BsonDocument> myCollection = _database.GetCollection<BsonDocument>(collectionName);
                    result = myCollection.Insert(entity);

                
                return result;
            

参考技术A 你的语言的driver里应该有提供

MongoDB 日期类型查询

一、前言

MongoDB 里面的日期类型是没有时区概念的,默认存储的是 ISODate("2018-04-02T13:19:16.418Z") 这种格式的零时区时间,比北京时间晚了八个小时。

工作中遇到了一个问题,怎么查询比当前时间小30秒之内的文档记录呢?

时区问题有关系吗?日期类型要怎么比较?怎么表示当前时间呢?日期要怎么实现加减呢?

二、方案

1、时区问题

其实时区问题并不是一个太需要关注的问题,因为MongoDB 提供了一个Javascript shell 窗口,支持 js 的语法。进行日期类型比较的时候,MongoDB 会自动处理 js 日期类型 和 MongoDB 日期类型间的时区问题。

2、怎么表示当前时间

既然我们已经有了 Javascript shell 窗口,那么表示当前时间不是一件轻而易举的事情了吗?直接一个 new Date() 就搞定了!

3、实现日期加减

有了 js 语法,日期的加减也不是特别难想了吧?

1     var now = new Date();
2     now.setSeconds(now.getSeconds() - 30);

4、实现查询

万事俱备,只欠东风。让我们来看看,最后的MongoDB查询是怎么样的吧?

1      var now = new Date();
2      now.setSeconds(now.getSeconds() - 30);
3      db.driverLocation.find({"uploadTime":{"$gte":now}}).sort({"uploadTime":-1});

以上是关于mongodb的日期类型,其他语言怎么插入这个类型的值啊?的主要内容,如果未能解决你的问题,请参考以下文章

MongoDB 日期类型查询

java怎么使用日期格式化将时间插入mysql datetime数据类型中?

你好,我的mongoDB素要获取最新插入记录的id,请问该怎么实现呢?请帮帮小弟,谢谢了

mongodb isodate怎么查询

sql怎么插入日期类型数据报将截断字符串或二进制数据

erlang处理mongodb日期时间格式data类型