Here's more craziness from my PostgreSQL 9.5.2 output. Why would this return false instead of true for the last column?
dts=# SELECT o.st, SUM(w.st), SUM(w.st) >= o.st
dts-# FROM orders o
dts-# LEFT JOIN production_work w ON o.ident = w.order_id
dts-# WHERE o.ident = 8436
dts-# GROUP BY o.ident;
st | sum | ?column?
------+------+----------
20.7 | 20.7 | f
(1 row)
It's like it simply can't do floating point math all of a sudden.
dts=# select st from production_work where order_id = 8436;
st
-----
8.4
6.4
5.9
(3 rows)