2013-08-28 2 views
2

Я пытаюсь преобразовать следующую операцию из MongoShell в Morpia, завернутый в mongodb-запрос.запрос MongoDB morphia с операцией modulo

любая помощь будет оценена:

db.ObjectMap.find(
    { 
     user: { 
      $mod : [10/* desired divisor*/, 
    2/*desired remainder */] 
     }, 
     items : { 
      $elemMatch : { 
       endTime : { 
       $gt : 111111 

       $lt : 222222 
       } 
      } 
     } 
    } 
); 

Я пошел так далеко, но я не могу найти хороший способ использовать модулю оператора на поле.

Query<ObjectMap> query = ds 
      .createQuery(ObjectMap.class) 
       .field(ObjectMap.FIELD_TIME).greaterThanOrEq(startTime) 
       .field(ObjectMap.FIELD_TIME).lessThanOrEq(endTime); 

ответ

0

Это просто подали в эти выходные: https://github.com/mongodb/morphia/issues/517

- ОБНОВЛЕНИЕ 9/10

я просто толкнул изменения реализовать этот фильтр. Он будет включен в предстоящую версию 0.104. Если вы хотите проверить его на ранней стадии, вы можете создать мастер и использовать созданный банку.

- Обновление 9/12

Версия 0,104 с этим исправлением только что был освобожден: https://github.com/mongodb/morphia/releases/tag/0.104

+0

Угу. Мы надеемся на это. :) –

Смежные вопросы