如何在 MongoDB 中搜索介于两个特定日期之间的日期?


若要搜索 MongoDB 中介于两个特定日期之间的日期,请使用 $gte 和 $lt。让我们创建一个包含文档的集合 -

> db.demo524.insertOne({"EndDate":new ISODate("2020-01-19")});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e8adbe5437efc8605595b63")
}
> db.demo524.insertOne({"EndDate":new ISODate("2020-01-20")});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e8adbec437efc8605595b64")
}
> db.demo524.insertOne({"EndDate":new ISODate("2020-12-31")});{
   "acknowledged" : true,
   "insertedId" : ObjectId("5e8adbf3437efc8605595b65")
}

使用 find() 方法显示集合中的所有文档 -

> db.demo524.find();

这将生成以下输出 -

{ "_id" : ObjectId("5e8adbe5437efc8605595b63"), "EndDate" : ISODate("2020-01-19T00:00:00Z") }
{ "_id" : ObjectId("5e8adbec437efc8605595b64"), "EndDate" : ISODate("2020-01-20T00:00:00Z") }
{ "_id" : ObjectId("5e8adbf3437efc8605595b65"), "EndDate" : ISODate("2020-12-31T00:00:00Z") }

以下是在 MongoDB 中搜索介于两个特定日期之间的数据的查询 -

> var first = new ISODate("2020-01-04");
> var last = new ISODate("2020-01-31");
> db.demo524.find({EndDate: {$gte: first, $lt: last}});

这将生成以下输出 -

{ "_id" : ObjectId("5e8adbe5437efc8605595b63"), "EndDate" : ISODate("2020-01-19T00:00:00Z") }
{ "_id" : ObjectId("5e8adbec437efc8605595b64"), "EndDate" : ISODate("2020-01-20T00:00:00Z") }

更新于: 13-May-2020

1000+ 浏览

开启你的 职业

通过完成课程获取认证

立即开始
广告