我目前正在使用 greenDAO 作为我的 Android 应用程序的 ORM。我在尝试执行 GROUPBY 子句时遇到了问题。
greenDAO 没有用于执行 groupby 子句的 API/辅助方法,因此我决定使用可用于 AbstractDAO 类的 query()
或 queryRaw()
方法,我可以在其中通过有效的 SQL 查询。但是,这两种方法都返回一个 java.util.List,所以让我感到困惑的是如何在结果中获取列别名的值?
例如,
SELECT COUNT(ID) AS NUMOFRECORDS, NAME FROM PERSONS GROUP BY AGE
我的实体将有 NAME 和 AGE 字段,但我创建了一个列别名 NUMOFRECORDS,它不是实体的一部分。
感谢您的帮助!
最佳答案
这是您问题的替代解决方案: 包括 Where 的 ORDER BY insize。
例如:
List<Taxi> list = daoSession.getDaoTaxi().queryBuilder().where(new WhereCondition.StringCondition("1 GROUP BY cant_aciento")).list();
关于android - GreenDAO groupby 子句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27906592/