Агрегирование Mongodb по сравнению дат ISO не возвращает никаких документов - PullRequest
2 голосов
/ 24 апреля 2019

Моя дата $ lte (body.to): 2019-04-24T15:42:16.472Z Дата моего $ gte (body.from): 2019-03-25T15:42:16.472Z

Этап сопоставления моего агрегирования:

  {
      $match: {
        'workflow.site.completedAt': {
          $exists: true
          // $lte: body.from
          // $gte: body.to
        }
      }
    },

еслиУ меня просто есть то, что существует там, я получаю:

[ { _id: null, date: 2019-04-16T14:56:36.738Z, count: 8450 } ]

Я группирую, используя $ last последний объект даты, и именно так дата форматируется в БД.Таким образом, данные, хранящиеся в БД, используют $ date, а затем это строковый формат ISO.

Запуск этапа сопоставления в любой комбинации, даже при сегодняшнем LTE, я не могу сопоставить / найти документы.

Данные в фактической базе данных:

 "completedAt": {
                    "$date": "2018-09-19T14:45:29.419Z"
                },
...