BUG #17961: Incorrect aggregation MIN, AVG, MAX

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=#

Responses

Browse pgsql-bugs by date

  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.