Я использую morphia mongo с java, где я пытаюсь запросить набор данных с некоторыми ограничениями. У меня очень старый набор данных, и с моим новым изменением я добавил новое поле в существующую коллекцию, которая будет присутствовать только в новых записях, поэтому я хочу сформулировать запрос, чтобы применить условие к этой записи коллекции, если и только если в коллекции есть это поле
Я проверил несколько билетов, таких как
Morphia MongoDB проверяет пустое и несуществующее поле
что близко к этому, но не точно, где он ищет нулевое поле. В моем случае поле отсутствует
Query<MyData> query = mObject.getDatastore().createQuery(MyData.class);
query.field("field1").hasAnyOf(values);
query.field("field2").exists().field("field2").lessThan(value);
Я смотрю что-то вроде того, что если field2 существует в коллекции, то применяйте только ограничение lessthan или пропустите это ограничение, примените только ограничение field1.