2016-11-13 1644 views
3

我在SO中发现了几个与此问题相关的问题,但并没有多大帮助。我想使用GreenDao库在Android中构建查询,查询应该抓取所有包含特定电话号码的行按日期时间降序排列,我也想按组名称分组。 我的查询:如何在GreenDao中使用GROUP BY

List<activity> activities = activityDao.queryBuilder().where(Properties.Contact_number.eq(phonenumber)).orderDesc(Properties.Date_time).build().list(); 

如何包含GROUP BY在上面的查询,以组由group_name行(我GROUP_NAME如表列)?

我没有在GreenDao中找到任何GROUP BY方法,不知道我是否正确。

回答

4

GROUP BY不受GreenDao支持。
您可以使用这一招:

where(new WhereCondition.StringCondition(Properties.Contact_number.eq(phonenumber) + "GROUP BY group_name")).orderDesc(Properties.Date_time).build().list(); 

它让你建立你的where子句中使用的字符串。

+0

谢谢。但是,我也想按照dateTime的降序排列它们。 – Naroju

+0

更新了答案。在这里,你只需要'手动'建立你的where子句,那么你可以像以前那样做 – HelloSadness