如何在MongoDB中的两个单独字段中的两个日期之间过滤对象?

时间:2017-10-30 08:25:44

标签: mongodb date

我需要过滤并只获取符合这些条件的对象

  1. 属性和值“aspectType”:“事件日历”。
  2. 2017年10月15日至2017年10月30日期间(日期格式为mm / dd / yyyy)

    {
    "_id": "a5a88cf3-3791-41e7-b8ad-f016d22e58a0",
    "from_date": "10/26/2017",
    "to_date": "10/26/2017",
    "aspectType": "Event Calendar"
    }
    
    {
    "_id": "920ddc44-611e-4878-8d0c-b0d6efee1cd4",
    "from_date": "10/26/2017",
    "to_date": "10/26/2017",
    "aspectType": "Event Calendar"
    }
    
    {
    "_id": "54bcbfa5-f644-452b-865a-83a2fc3d0b7b",
    "from_date": "10/09/2017",
    "to_date": "10/10/2017",
    "aspectType": "Event Calendar",
    }
    
  3. 如何使用MongoDB过滤对象?

    我写的代码是,

    {aspectType: "Event Calendar", $and:[{from_date: {$gte:10/15/2017}},{to_date:{$lte: 10/30/2017}}]}
    

1 个答案:

答案 0 :(得分:0)

mongo日期查询支持ISODate(" 2012-12-27T23:25:45.120Z")。

尝试:

 $and:[{from_date: {$gte: ISODate("2012-10-15T00:00:00.000Z")}},{to_date:{$lte: ISODate("2012-10-30T00:00:00.000Z")}}