1.查询语句
(1)适用明确查询目标,多个查询条件
例如,查询小明,是买了苹果还是香蕉
infoDao.queryBuilder().and(InfoDao.Properties.Usestate.eq(useState),InfoDao.Properties.Id.eq(qusey_sentence));
这句话可以是为查询小明买了苹果
infoDao.queryBuilder().and(InfoDao.Properties.Usestate.eq(useState),InfoDao.Properties.Name.eq(qusey_sentence));
这句话可以说是查询小明买了香蕉
infoDao.queryBuilder().whereOr(whereCondition1,whereCondition2).list();
2.分页查询
QueryBuilder qb =infoDao.queryBuilder().offset(offset *2).limit(2);
主要是offset().里面可以传递int值,limit显示每次查询几条数据
举例说明:我提前建好了数据库,里面有5条数据
例子1:
QueryBuilderqb =infoDao.queryBuilder().offset(0).limit(2);
例子2:
QueryBuilderqb =infoDao.queryBuilder().offset(1).limit(2);
例子3:
QueryBuilderqb =infoDao.queryBuilder().offset(2).limit(2);
例子4
QueryBuilderqb =infoDao.queryBuilder().offset(3).limit(2);
例子5:
QueryBuilderqb =infoDao.queryBuilder().offset(4).limit(2);
当我offset中传入5的时候,数据显示为空
源码这样说明
翻译:
将查询结果的偏移量与限制相结合。第一个极限结果被跳过,结果的总数将被限制。不能无限制地使用偏移量
最后使用的话,初始值0,加载下一页就offset++;
QueryBuilderqb =infoDao.queryBuilder().offset(offset*2).limit(2);