这可能非常简单,因为文档非常简单。有没有办法在 postgresql 中通过乘法运算符聚合列。我知道我可以做 count(column) 或 sum(column),但是我可以使用乘法(column) 或 product(column) 函数。如果没有,任何想法如何实现它。

我正在使用 postgres 9.1

问候,
哈桑

最佳答案

当然,只需在基本乘法函数上定义一个聚合。例如。对于 bigint:

CREATE AGGREGATE mul(bigint) ( SFUNC = int8mul, STYPE=bigint );

例子:
regress=> SELECT mul(x) FROM generate_series(1,5) x;
 mul
-----
 120
(1 row)

CREATE AGGREGATE

关于aggregate-functions - postgresql 中的乘法(num)聚合函数,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/21623282/

10-12 20:54