我想在 JOOQ 中实现一个基本的 time_bucket 语句。
如果我在控制台中运行此语句,它工作得很好:
SELECT time_bucket('5 minutes', time) as t, avg(average)
from TABLE
GROUP BY t
Run Code Online (Sandbox Code Playgroud)
如果我尝试用 JOOQ 实现它,我会遇到生成的例程不起作用的问题,因为我无法添加间隔。
我想要类似以下代码的内容,但间隔“5 分钟”不起作用:
dslContext.select(timeBucket('5 minutes', TABLE.TIME), avg(TABLE.AVERAGE))
.from(TABLE)
.groupBy(timeBucket8('5 minutes', TABLE.TIME))
.fetch())
Run Code Online (Sandbox Code Playgroud)
有没有一种简单的方法来实现间隔?
我正在使用 TimescaleDB 并且想要删除旧数据。
作为测试目的,我用一些不同的数据填充一个空的 Hyptertable。
我使用 2 小时旧数据、10 小时旧数据和 15 小时旧数据运行了以下语句:
select drop_chunks(interval '1 hours', 'my_table')
Run Code Online (Sandbox Code Playgroud)
仅删除 15 小时前的数据。通过阅读 https://docs.timescale.com/v1.1/api#drop_chunks 我认为所有数据都应该被删除。