我使用GreenDao并且我有一个由这个类定义的实体:
Dot {
String name;
float value;
}
我想从我的DataBase中提取所有在值-1和值+ 1 之间的值的点。 SQL查询应该是这样的:
SELECT * FROM dot WHERE value BETWEEN(value-1, value+1)
我可以在GreenDao中做同样的事情,也许:
QueryBuilder<Dot> query = DotDao.queryBuilder();
query.where(DotDao.Properties.Value.between(DotDao.Properties.Value-1, DotDao.Properties.Value+1));
List<Range> rangeList = query.list();
这可能还是我必须使用一些Raw查询?
答案 0 :(得分:0)
您可以使用AND运算符。
例如:
QueryBuilder<Dot> query = DotDao.queryBuilder();
List<Range> rangeList = query.where(DotDao.Properties.Value.ge(value - 1), DotDao.Properties.Value.le(value + 1))
.list();