Я пытаюсь поставить это в морфий запрос:MongoDB Morphia elemMatch API
db.woot.find({
"bar.tables": {
$elemMatch: {
"tableId": {
$in: [3,
4]
},
"tab": {
$gte: 20000
}
}
}
})
Так у меня есть:
Query<Table> q
q.field("bar.table").hasThisElement()
И после этого я не знаю, как закончить запрос и все еще используя FieldEnd, который поддерживает методы(), gte(), не записывая весь запрос самостоятельно с помощью BasicDBObjects.
Пожалуйста, помогите мне преобразовать вышеуказанный запрос в самый подходящий эквивалент Морфии.
EDIT: bar.tables - массив, поэтому сопоставление должно выполняться с помощью elemMatch, иначе оно может соответствовать первому условию из некоторого элемента и второго условия из другого элемента, но действительны только элементы, соответствующие обеим условиям.
Для этого достаточно: ('bar.table.tableId' должно быть 3 или 4) и' bar.table.tab' должно быть больше 20,00 - правильно? – xeraa
Да. Но обратите внимание, что это может быть и любой другой оператор или данные. Запрос строит поверх API, который определяет оператор и данные. – Steinkauz