我使用Spring Data Mongo和Mongo DB;Spring Data Mongo測試字段
在集合中,docs有一個字段,假設包含一個整數,我們稱之爲myInt。
我想檢索具有敏2個動態整數之間像所有的文檔:
myInt - dynInt1 < myInt < myInt + dynInt2
我需要使用請求現場敏,我可以預先計算它在Java中creterias使用它。
我使用Spring Data Mongo和Mongo DB;Spring Data Mongo測試字段
在集合中,docs有一個字段,假設包含一個整數,我們稱之爲myInt。
我想檢索具有敏2個動態整數之間像所有的文檔:
myInt - dynInt1 < myInt < myInt + dynInt2
我需要使用請求現場敏,我可以預先計算它在Java中creterias使用它。
是的,它可以在SpringData進行如下:
query.addCriteria(Criteria.where("field").gt(value1).lt(value2));
使用GTE(大於和equalto)和LTE(小於和equalto)如果你想還包括在標準動態INT值。
但我怎麼能做一些像query.addCriteria(Criteria.where(「field」).gt(「field」 - value1).lt(「field」+ value2)); – Titmael 2014-09-03 06:14:33
試試下面的方法在您的SpringData接口:
YourEntity findByMyIntLessThanAndMyIntGreaterThan(int min, int max);
接下來,執行查找通話,採取敏值並執行與這兩個值第二個電話:
int myInt = myRepository.findByXXXX().getMyInt();
int min = myInt - dynInt1;
int max = myInt + dynInt2;
myRepository.findByMyIntLessThanAndMyIntGreaterThan(min, max);
,但我怎麼能做一些像query.addCriteria(Criteria.where(「field」).gt(「field」 - value1).lt(「field」+ value2)); – Titmael 2014-09-03 06:14:17