2014-02-07 77 views
1

這可能是令人難以置信的簡單的文檔是相當的。有沒有辦法通過postgresql中的乘法運算符來聚合列。我知道我可以計數(列)或總和(列),但是我可以使用乘法(列)或乘積(列)函數。如果沒有,任何想法如何實現它。postgresql中的multiply(num)聚合函數

我使用的Postgres 9.1

問候, 哈桑

回答

7

當然,只是定義了鹼增殖功能的集合體。例如。對於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

+0

作品。感謝一羣 – saGii

+2

誰爲此絆倒的額外信息。我需要這個雙數,所以我做了: CREATE AGGREGATE mul(雙精度)(SFUNC = float8mul,STYPE =雙精度) – saGii