ORMLITE-ANDROID中的SQL MAX-MIN

ORMLITE-ANDROID中的SQL MAX-MIN,android,sql,max,ormlite,Android,Sql,Max,Ormlite,我想知道如何在ORMLITE中使用MAX-MIN命令 例如,假设我们有这个表 表名=示例 第1列=id 第2列=名称 在ORMLITE中如何获取最大id?我看了看,但不太明白 有人能给我展示一下ORMLITE中的Max-min示例吗?这是我在代码中查询Max-ID的方式: QueryBuilder<Example, String> builder = dao.queryBuilder(); builder.orderBy("id", false); // true or false

我想知道如何在ORMLITE中使用MAX-MIN命令

例如,假设我们有这个表

表名=示例
第1列=id
第2列=名称

在ORMLITE中如何获取最大id?我看了看,但不太明白


有人能给我展示一下ORMLITE中的Max-min示例吗?

这是我在代码中查询Max-ID的方式:

QueryBuilder<Example, String> builder = dao.queryBuilder();
builder.orderBy("id", false);  // true or false for ascending so change to true to get min id
Example example = dao.queryForFirst(builder.prepare());
String id = null;
if (example == null)
    id = "-1";
else
    id = example.getId();
QueryBuilder builder=dao.QueryBuilder();
builder.orderBy(“id”,false);//升序为true或false,因此更改为true以获取最小id
示例=dao.queryForFirst(builder.prepare());
字符串id=null;
if(示例==null)
id=“-1”;
其他的
id=example.getId();
这里还可以找到几个备选答案:

QueryBuilder

您可以使用:

queryRawValue(“从tableName中选择MAX(columnName))

它将直接返回long值

参考:

queryRawValue(字符串查询、字符串…参数)

执行返回单个值的原始查询(通常是一个聚合函数,如MAX或COUNT)。如果查询没有返回单个长值,那么它将抛出SQLException


+1您还应该添加一个
limit(1)
,因为只返回一个结果。@灰色-只有一点:在较新版本的ORMLite中,limit(int)不推荐使用。您必须使用限制(1L)。但多亏了你们两个!
QueryBuilder<Account, Integer> qb = accountDao.queryBuilder();

qb.selectRaw("MIN(orderCount)", "MAX(orderCount)");

// the results will contain 2 string values for the min and max

results = accountDao.queryRaw(qb.prepareStatementString());

String[] values = results.getFirstResult();