Mongodb (v2.4.0) $ match агрегат не работает с диапазоном дат
Я использую Java-драйвер mongodb через репозиторий Maven (как показано ниже в pom.xml) для запроса транзакций между диапазонами дат с помощью совокупного фреймворка. Драйвер java генерирует следующий $ match, который я попытался проверить на консоли mongo и обнаружил, что он не работает:
db.transactions.aggregate(
{ "$match" :
{
"created_at" : { "$gt" : { "$date" : "2001-04-12T12:00:00.000Z"} , "$lte" : { "$date" : "2020-04-13T12:00:00.000Z"}}
}
}
)
Если я удаляю блок $ date и заменяю его функцией ISOdate и строкой даты, то это, похоже, работает. Я не смог понять, почему это не работает в Java ($ match JSON - я получил из eclipse, чтобы попробовать в консоли Монго, и это не работает также.)
pom.xml
<dependency>
<groupId>org.mongodb</groupId>
<artifactId>mongo-java-driver</artifactId>
<version>2.11.0</version>
</dependency>
Кто-нибудь знает, почему $ date не работает с агрегатом с использованием MongoDB v2.4.0?