所有
我是MongoDB的新手,我想知道我是否想按日期范围搜索文档,我该怎么做?所以,问题是:
[1]如何插入数据?
我的数据对象如下:
{
value: 10,
date: "20150121"
}
我想知道在插入之前如何预处理日期字段
[2]如何搜索特定范围的文档?
我在想使用类似的东西:
db.collection.find( { date: { $gt: date1, $lt: date2 } } );
但我不确定。
由于
答案 0 :(得分:0)
试一试。 那可行。您可能希望将日期作为整数而不是字符串进行类型转换,如图所示。
> db.datesort.insert({value:NumberInt(10),date:NumberInt(20150121)});
> db.datesort.insert({value:NumberInt(20),date:NumberInt(20150122)});
> db.datesort.insert({value:NumberInt(30),date:NumberInt(20150123)});
> db.datesort.insert({value:NumberInt(40),date:NumberInt(20150124)});
> db.datesort.insert({value:NumberInt(50),date:NumberInt(20150125)});
> db.datesort.find({date:{$gt:20150121,$lt:20150124}});
{ "_id" : ObjectId("555d0c23f4384ca8c403f441"), "value" : 20, "date" : 20150122 }
{ "_id" : ObjectId("555d0c2bf4384ca8c403f442"), "value" : 30, "date" : 20150123 }