У меня следующий запрос:
Criteria crit = Criteria.where("nestedObj.date").lt(LocalDate.now())
.and("nestedObj.active").is(true)
.and("someId").is(null)
.and("somethingElse").exists(false);
Как я могу убедиться, что nestedObj.active
и nestedObj.date
проверены на одном и том же nestedObj
?
Я хочу только этогочтобы соответствовать, если у документа есть nestedObj
, который является активным И имеет дату старше, чем сегодня.
Пример:
Если массив nestedObj
в документе выглядит как этот, запросдолжно соответствовать:
[
{
"nestedObj": {
"active": "true",
"date": "2010-29-10"
},
{
"nestedObj": {
"active": "false",
"date": "2010-29-10"
},
{
"nestedObj": {
"active": "true",
"date": "2022-29-10"
}
]
Но если это выглядит так, это не должно:
[
{
"nestedObj": {
"active": "false",
"date": "2010-29-10"
},
{
"nestedObj": {
"active": "true",
"date": "2022-29-10"
}
]