【发布时间】:2021-03-11 18:51:33
【问题描述】:
目前在 android 房间中有一张桌子,可以在 yyyy-MM-dd 格式的列中保存一天。我想查询最长连续天数和当前连续数。我将如何在 Room 中做到这一点?
这里有一些示例数据可以帮助解释我想要什么:
action | date
------------------------------
sample action 1 | 2021-03-01
sample action 2 | 2021-03-02
sample action 3 | 2021-03-03
sample action 4 | 2021-03-04
sample action 5 | 2021-03-05
sample action 6 | 2021-03-06
sample action 7 | 2021-03-09
sample action 8 | 2021-03-09
sample action 9 | 2021-03-10
sample action 10 | 2021-03-11
sample action 11 | 2021-03-12
因此最长的连续是从 2021-03-01 到 2021-03-06 的 6 天,而当前的连续是 4 天(2021-03-09 到 2021-03-12)。
【问题讨论】:
-
是否需要通过
Room查询来实现,还是可以将所有数据读入List并在那里进行分析? -
@codebod 对我来说理想的解决方案是对每个连胜(当前和最长)进行房间查询,但如果我能做到这一点,另一种方式也可能奏效。
-
发布示例数据和预期结果以阐明您想要什么。
-
@forpas 我更新了问题以更详细地解释。
-
我看到有重复的日子:
2021-03-09。为什么当前的连胜不是 5?
标签: android sqlite android-sqlite android-room