我有一个简单数据库来存储数据:运动类型(步行、跑步等)、距离、时间戳。我希望生成报告并计算所有记录的距离总和,按运动类型分组并计算每种类型的总和,按天分组并计算每天的总和。
但通过一次查询,我只能得到一种和:没有group - total。如果我使用"GROUP BY"
参数,则只有组记录没有总和。
如果使用两组,我不能得到前一组的总和(移动类型)。
所以,我需要使用几个查询还是我可以做一个?
我用SQLiteDatabase query()
的方法。
我不知道如何通过光标得到第一组,然后第二组,等等。
1条答案
按热度按时间neskvpey1#
如果您需要
sum(distance) by movement_kind
和sum(distance) by movement_date
搭配单一查询。您可能想要搭配SQLiteDatabase.rawQuery()
搭配类似下列的查询使用:结果如下所示:
在应用程序代码中,需要检查
movement_kind
或movement_date
是否为NULL。如果是,则distance
中的值将按另一列分组。示例数据: