MongoDB 时间范围查询目前有两种方式:
- Date
- ISODate
MongoDB条件对应关系
- (>) 大于 – $gt
- (<) 小于 – $lt
- (>=) 大于等于 – $gte
- (<= ) 小于等于 – $lte
Date方式
例如查询时间段为2023.01.03<=日期<=2023.01.05可翻译为:
"日期字段名":{$gte:new Date(2023,0,3),$lte:new Date(2023,0,5)}
注意:中间的月份从0开始,0代表1月份,11代表12月份
db.test.find({"createTime":{"$gte":new Date(2023,0,3),"$lte":new Date(2023,0,5)}})
查询时间段记录数:
db.test.find({"createTime":{"$gte":new Date(2023,0,1),"$lte":new Date(2023,0,4)}}).count()
ISODate方式
例如查询时间段为2023.01.03<=日期<=2023.01.05可翻译为:
"日期字段名":{"$gte":ISODate("2023-01-03T00:00:00Z"),"$lte":ISODate("2023-01-05T00:00:00Z")}
db.test.find({"createTime":{"$gte":ISODate("2023-01-03T00:00:00Z"),"$lte":ISODate("2023-01-05T00:00:00Z")}})
查询时间段记录数:
db.test.find({"createTime":{"$gte":ISODate("2023-01-03T00:00:00Z"),"$lte":ISODate("2023-01-05T00:00:00Z")}}).count()