OrmLite要继承一个OrmLiteSqliteOpenHelper,通过OrmLiteSqliteOpenHelper实例的getDao方法可以获取一个Dao类,下边代码中mDao是Dao的实例,用来进行各种数据库操作。Dao类其中有个queryBuilder()方法可以得到builder来构造复杂查询语句。
假设有Person实体,对应数据库t_person表。通过该表来讲下述各种查询方法。
Id LastName FirstName Address City 1 Adams John Oxford Street London 2 Bush George Fifth Avenue New York 3 Carter Thomas Changan Street Beijing 4 Gates Bill Xuanwumen 10 Beijing
WEHRE子句 在SQL语句中,经常会用到where语句,where 进行条件筛选。 dao.queryBuilder.()where()方法返回一个where对象,where中提供了很多方法来进行条件筛选,下边逐个讲where中的方法。
方法 :eq(columnName,value) 等于(=)equals 使用示范:mDao.queryBuilder().where().eq(“id”, 2).query(); 对应SQL:SELECT * FROM t_person
WHERE id
= 2 结果: 2 Bush George Fifth Avenue New York
方法 :lt(columnName,value) 小于() greater than 使用示范:mDao.queryBuilder().where().gt(“id”, 2).query(); 对应SQL:SELECT * FROM t_person
WHERE id
> 2 结果: 3 Carter Thomas Changan Street Beijin
方法 :ge(columnName,value) 大于等于(>=)greater-than or equals-to 使用示范:mDao.queryBuilder().where().ge(“id”, 2).query(); 对应SQL:SELECT * FROM t_person
WHERE id
>= 2 结果: 2 Bush George Fifth Avenue New York 3 Carter Thomas Changan Street Beijing
方法 :le(columnName,value) 小于等于(4”).query() 对应SQL:SELECT * FROM t_person
GROUP BY City
HAVING SUM(id)>4 结果 4 Gates Bill Xuanwumen 10 Beijing
countOf 返回查询结果的总数 使用示范:mDao.queryBuilder().countOf() 对应SQL:SELECT COUNT(*) FROM t_person
结果 4
iterator 返回一个结果集的迭代器。 使用示范:Iterator iterator = mDao.queryBuilder().iterator(); queryForFirst 返回所有行的第一行。 使用示范:mDao.queryBuilder().queryForFirst();