db.things.find({"createTime":{"$gt":"2014-10-29 0:0:0"}}) // 大于某个时间
db.things.find({"createTime":{"$lt":"2014-10-29 0:0:0"}}) // 小于某个时间
db.things.find({"$and":[{"createTime":{"$gt":"2014-10-29 0:0:0"}},{"createTime":{"$lt":"2014-10-29 0:0:0"}}]}) // 某个时间段
由于Mongodb不是关系型数据库文件,实际上,它并不存在传统关系型数据库中的所谓“数据库”的概念,但不用担心,当你第一次新增数据时,mongodb就会以collection集合的形式进行保存和新建,而不需要你手工去新建立。
最近做报表,日志都是存入mongodb,所以需要从mongodb统计查询。
需求:
1、按天查询当天日志条数。
2、返回当天日期和条数2个字段。
ISODate为0时区,查询时需要加入时区 "timezone" : "Asia/Shanghai" ,否则凌晨8点以前的数据会归入前一天的日期。
NameValueEntity.java
问题:1,ISODate("2016-01-01T00:00:00Z"),这个是什么日期格式。
2,mongo vue的时间类型属性的相关查询。包括,大于某个时间,小于某个时间,在某一段时间范围。
3,了解一下mongo数据库中存储时间Date类型数据的秘密。
MongoDB 日期查询目前可通过Date 和ISODate两种方式:
1.Date方式。
例如startDate<=2012.12.7且endDate>=2012.12.7:可翻译为
"startDate":{$lte:new Date(2012,11,7)},"endDate":{$gte:new Date(2012,11,7)}。
如下是查询日期大于等于2016年12月1日的记录条数(注意,中间的月份写11,就是12月)
db.xxx.find({"updateTime" : {$gte:new Date(2016,11,1)}})
看下图,发现,mongo vue自动给日期转换为ISODate的格式了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)