Sql 如何在TimescaleDB中的一个表上创建多个连续聚合?

Sql 如何在TimescaleDB中的一个表上创建多个连续聚合?,sql,postgresql-11,timescaledb,Sql,Postgresql 11,Timescaledb,我有这个系列表格及其超表格。我想对这个表中的数据进行不同的连续聚合 CREATE TABLE series ( time TIMESTAMPTZ PRIMARY KEY, value INTEGER ); SELECT create_hypertable('series', 'time'); CREATE VIEW mat_view1 WITH (timescaledb.continuous) AS SELECT time_bucket('1 day', time) AS d

我有这个
系列
表格及其超表格。我想对这个表中的数据进行不同的连续聚合

CREATE TABLE series (
    time TIMESTAMPTZ PRIMARY KEY,
    value INTEGER
);

SELECT create_hypertable('series', 'time');

CREATE VIEW mat_view1
WITH (timescaledb.continuous) AS
SELECT time_bucket('1 day', time) AS day,
AVG(value)
FROM series
GROUP BY day;

CREATE VIEW mat_view2
WITH (timescaledb.continuous) AS
SELECT time_bucket('1 week', time) AS week,
COUNT(value)
FROM series
GROUP BY week;
但在PostgreSQL 11中似乎是不可能的-这是我运行上述查询时得到的结果:

ERROR:  hypertable already has a continuous aggregate
RECOMMENDATION:  hypertables currently only support a single continuous aggregate. Drop the other continuous aggreagate to add a new one.
甚至不可能在同一个表上创建不同的超表

ERROR:  hypertable already has a continuous aggregate
RECOMMENDATION:  hypertables currently only support a single continuous aggregate. Drop the other continuous aggreagate to add a new one.

有可能绕过这个限制吗?或者我是否应该使用另一种方法(例如,为每个连续聚合使用重复的
系列
表:-x)?

从TimescaleDB 1.4.0开始,这是受支持的,请参阅:

在此之前,时间刻度中不支持此操作,但是您可以执行以下操作:创建一个包含所有可能需要的详细信息的连续聚合,然后为第二个用例创建一个常规视图

CREATE VIEW mat_view1
使用(timescaledb.continuous)作为
选择时间(“1天”,时间)作为日期,
平均值(值)作为平均值,
计数(值)作为计数
从系列
按天分组;
将视图2创建为
选择时间(“1周”,天)作为周,
作为计数的总和(计数)
从mat_视图1
每周分组;

感谢您的快速回复。至少可以解决此问题。:-)我们需要等待时间刻度1.4。你能告诉我大概的发布日期吗?我能给你的大概时间是几周