即使表中缺少某些日期,也需要从表中获取最近10个最近日期的行。
此查询可以很好地获取日期,但问题是android room dao中的同一查询在“ SELECT x + 1” x处引发了编译错误。
@Query(WITH RECURSIVE
stepDtailsTable(x) AS (
SELECT 0
UNION ALL
SELECT x + 1 FROM stepDtailsTable
LIMIT(SELECT((julianday('2019-03-20')-julianday('2019-03-01')))+1)
)
SELECT date(julianday('2019-03-01'),'+'||x||' days')as date FROM stepDtailsTable")
StepDetailsPojo getLastTenDayData();
答案 0 :(得分:0)
我注意到您在使用Julian日期常量,而您想从表中查询最近的最近10个日期。这是一个执行此查询的查询,填补了从表中找到的最大日期到10天之前的间隔。我无法在您的平台上进行测试,因此可能无法解决您遇到的编译器错误,可能是因为不支持RECURSIVE
。希望它可以使您更进一步。
WITH RECURSIVE
cte(x) AS (
SELECT julianday(date(max(thedate))) from TheDataTable
UNION ALL
SELECT x-1 FROM cte
LIMIT 10
)
SELECT date(x) FROM cte