
21 Jan
2008
21 Jan
'08
2:14 a.m.
MonetDB SR5 behaves unexpectedly when we've tried to use COALESCE with aggregates, here's an example: sql>CREATE TABLE tmp(a int); sql>SELECT SUM(a) FROM tmp; +-------+ | sum_a | +=======+ | 0 | +-------+ sql>SELECT MIN(a) FROM tmp; +-------------+ | min_a | +=============+ | null | +-------------+ sql>SELECT COALESCE(MIN(a), 0) FROM tmp; sql> For the first SELECT I would expect NULL, the second SELECT is okay, but I expect a result for the third! Here's what PosgreSQL does: bob=# CREATE TABLE tmp(a int); CREATE TABLE bob=# SELECT SUM(A) FROM tmp; sum ----- (1 row) bob=# SELECT MIN(a) FROM tmp; min ----- (1 row) bob=# SELECT COALESCE(MIN(a), 0) FROM tmp; coalesce ---------- 0 -bob