在 MongoDB 中查詢兩個日期之間的物件?


在 MongoDB 中使用運算子 $gte 和 $lt 查詢兩個日期之間的物件。為了理解這些運算子,讓我們建立一個集合。

在此處建立集合

>db.order.insert({"OrderId":1,"OrderAddrees":"US","OrderDateTime":ISODate("2019-02-19")};
WriteResult({ "nInserted" : 1 })

>db.order.insert({"OrderId":2,"OrderAddrees":"UK","OrderDateTime":ISODate("2019-02-26")};
WriteResult({ "nInserted" : 1 })

使用 find() 方法顯示集合中的所有文件。查詢如下

> db.order.find().pretty();

以下為輸出

{
   "_id" : ObjectId("5c6c072068174aae23f5ef57"),
   "OrderId" : 1,
   "OrderAddrees" : "US",
   "OrderDateTime" : ISODate("2019-02-19T00:00:00Z")
}
{
   "_id" : ObjectId("5c6c073568174aae23f5ef58"),
   "OrderId" : 2,
   "OrderAddrees" : "UK",
   "OrderDateTime" : ISODate("2019-02-26T00:00:00Z")
}

以下查詢用於查詢兩個日期之間的物件

> db.order.find({"OrderDateTime":{ $gte:ISODate("2019-02-10"), $lt:ISODate("2019-02-21") }
}).pretty();

以下為輸出

{
   "_id" : ObjectId("5c6c072068174aae23f5ef57"),
   "OrderId" : 1,
   "OrderAddrees" : "US",
   "OrderDateTime" : ISODate("2019-02-19T00:00:00Z")
}

已更新: 2019 年 7 月 30 日

3 千+ 次瀏覽

開啟您的事業

完成課程後獲得認證

開始
廣告
© . All rights reserved.