首页 > 代码库 > Ormlite or()的使用

Ormlite or()的使用

如题,由于不熟悉这个框架的API,所以用的时候出错了,直接上代码

	public List<Type> getAllBetweenDate(String start, String end) {		List<Type> types = null;		try {//			types = typeDaoOpe.queryBuilder().where().ge("startdate", start)//					.and().le("startdate", end).or().ge("enddate", start)//					.and().le("enddate", end).query();			Where<Type, Integer> where = typeDaoOpe.queryBuilder().where();			where.or(					where.and(where.ge("startdate", start),							where.le("startdate", end)),					where.and(where.ge("enddate", start),							where.le("enddate", end)));			types = where.query();		} catch (SQLException e) {			e.printStackTrace();		}		return types;	}

 注释部分是原来错误的用法,对应的sql为“select * from tbl_type where (startdate>=‘2015-01-01‘ and startdate<=‘2015-01-31‘) or (enddate>=‘2015-01-01‘ and endate<=‘2015-01-31‘)”。

 

参考 http://stackoverflow.com/questions/15375967/or-statement-ormlite

http://ormlite.com/javadoc/ormlite-core/doc-files/ormlite_3.html#Building-Queries

Ormlite or()的使用