find list where value == x

时间:2016-01-11 07:12:23

标签: java playframework ebean

我正在尝试获取访问级别介于0到10之间的所有用户的列表。开发人员用户具有更高的访问级别,因为他们应该能够更改非常关键的数据。

当前版本返回所有用户。

List<UserType> userList = UserType.find.all();

是否可以这样做:

select *
from user
where access_level >= 0
  and
  access_level <=10
;

比较值是:

UserType.getAccessLevel

该表名为&#39; acces_level&#39;在数据库中。

3 个答案:

答案 0 :(得分:1)

快速浏览the JPA examples for Playframework,似乎这完全属于可能性范围。

要表达它,你需要做这样的事情:

List<UserType> userList = UserType.find("access_level >= 0 AND access_level < 10");

答案 1 :(得分:1)

我不在家,因此我无法测试,但我确定你需要 ge()

List<UserType> userList = UserType.find.where().ge("access_level", 10).findList();

我认为它是Junctiongreater than equals to

的组合

答案 2 :(得分:0)

这是一个有效的版本,但我想知道它如何与find方法一起使用。

for(int i = 0; i< userList.size(); i++){
    if(userList.get(i).getAccessLevel() > 10){
        userList.remove(i);
        i--;
    }
}