On Tue, Mar 15, 2016 at 8:36 AM, David Fetter <da...@fetter.org> wrote: > > Please find attached a patch that uses the float8 version to cover the > numeric types.
Is there a well-defined meaning for having a negative weight? If no, should it be disallowed? I don't know what I was expecting, but not this: select weighted_avg(x,10000000-2*x) from generate_series(1,10000000) f(x); weighted_avg ------------------ 16666671666717.1 Also, I think it might not give the correct answer even without negative weights: create table foo as select floor(random()*10000)::int val from generate_series(1,10000000); create table foo2 as select val, count(*) from foo group by val; Shouldn't these then give the same result: select stddev_samp(val) from foo; stddev_samp ------------------- 2887.054977297105 select weighted_stddev_samp(val,count) from foo2; weighted_stddev_samp ---------------------- 2887.19919651336 The 5th digit seems too early to be seeing round-off error. Cheers, Jeff -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers