假设我有这个文档结构:
{
"event" : "Event 1"
"startDate": 20130101, // Jan-1-2013
"endDate": 20140101 // Jan-1-2014
}
如何搜索日期介于startDate
和endDate
之间且使用索引的所有文档?
示例:查找介于20120101和20150101之间的所有文档。
我的上述文件应该匹配,因为20130101到20140101属于上述查询。
答案 0 :(得分:1)
db.coll.find({endDate : {$lt : 20150101}, startDate : {$gt : 20120101}}
或使用$lte
,$gte
如果是频繁查询和相当大的集合,请使用索引作为开始日期和结束日期