From: | PG Bug reporting form <noreply(at)postgresql(dot)org> |
---|---|
To: | pgsql-bugs(at)lists(dot)postgresql(dot)org |
Cc: | dp(dot)maxime(at)gmail(dot)com |
Subject: | BUG #17961: Incorrect aggregation MIN, AVG, MAX |
Date: | 2023-06-04 22:04:04 |
Message-ID: | 17961-144590ce48daf66b@postgresql.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-bugs |
The following bug has been logged on the website:
Bug reference: 17961
Logged by: Maxim Zakharov
Email address: dp(dot)maxime(at)gmail(dot)com
PostgreSQL version: 14.8
Operating system: Ubuntu 22.04.2
Description:
Hello,
I came across a situation when MIN(), AVG() and MAX() aggregates where
computed incorrectly, as you can see from the output below the valuer of
MIN() is higher than AVG() and MAX()!
Expected values should be the same as for MIN()
The table n has all values been updated several times with different values
and currently all rows contain the value of 11.55
$ psql db
psql (15.3 (Ubuntu 15.3-1.pgdg22.04+1), server 14.8 (Ubuntu
14.8-1.pgdg22.04+1))
Type "help" for help.
asx=# reindex table n;
REINDEX
asx=# select at, MIN(diluted_earnings_1)::numeric as diluted_earnings_1min,
ROUND(AVG(diluted_earnings)::numeric, 2) as diluted_earnings_1avg,
MAX(diluted_earnings)::numeric as diluted_earnings_1max
from n
where sym like '___ '
group by at
order by at desc limit 1;
at | diluted_earnings_1min | diluted_earnings_1avg |
diluted_earnings_1max
------------+-----------------------+-----------------------+-----------------------
2023-06-02 | 11.55 | -0.17 |
-0.17
(1 row)
db=#
From | Date | Subject | |
---|---|---|---|
Next Message | Nikhil Benesch | 2023-06-04 22:39:05 | Array parsing incorrectly accepts ragged multidimensional arrays |
Previous Message | PG Bug reporting form | 2023-06-04 12:20:56 | BUG #17960: pg_dump does not backup generated columns correctly. |