Re: Calculating product from rows - (aggregate product ) - Mailing list pgsql-general

From Jasen Betts
Subject Re: Calculating product from rows - (aggregate product )
Date
Msg-id gtmhfi$u26$2@reversiblemaps.ath.cx
Whole thread Raw
In response to Calculating product from rows - (aggregate product )  (Allan Kamau <allank@sanbi.ac.za>)
Responses Re: Calculating product from rows - (aggregate product )
Re: Calculating product from rows - (aggregate product )
List pgsql-general
On 2009-05-04, Allan Kamau <allank@sanbi.ac.za> wrote:
> Hi
>
> I would like to calculate a product of a field's values of a relation,
> this function may multiply each value and give the result as a single
> float number.
>
> For example:
>
>
> CREATE table imaginary(id INTEGER NOT NULL, some_field FLOAT
> NULL,primary key(id));
>
> INSERT INTO imarginary(1,0.333);INSERT INTO imarginary(2,0.667);INSERT
> INTO imarginary(3,0.4);
>
>
> SELECT prod(some_field) FROM imarginary;
>
>
> would give 0.0888444 (which is 0.333*0.667*0.4)
>
>
> Is there an already existing function that does this.

here's one way to cheat: logarythms.

select exp(sum(ln( thiscolumn ))) from foo;

 :^)


pgsql-general by date:

Previous
From: "Markus Wollny"
Date:
Subject: diff-/patch-functionality for text-type data inside PostgreSQL
Next
From: Jasen Betts
Date:
Subject: Re: keeping track of function execution