2

我有这个连续的观点:

=# CREATE CONTINUOUS VIEW v AS
SELECT id::int, count(v::int) AS counter, avg(v) AS average
FROM mystream
GROUP BY id;

所以我需要平均值,以及用于计算该平均值的元素数量(counter)。有没有办法从 AVG 数据结构中提取这个计数,所以我不必创建一个counter字段?

=# TABLE v_mrel0;
 id | counter | average
----+---------+---------
  1 |    2    | {2,30}
4

1 回答 1

0

不幸的是,没有。过渡状态的内部是私有的。在您的情况下,avg(integer)它是一个二元素数组,因此您可能会读取数组的第一个元素,但这不适avg用于转换状态为字节数组且没有机制与之交互的其他数据类型.

有一个单独的count聚合对你不起作用的原因吗?

于 2015-11-27T23:23:07.897 回答