Hello. Is this a bug?
>linux=# SELECT * FROM test; > x >--- > 1 > 2 > 3 >(3 Rows) > >linux=# SELECT * FROM test WHERE FALSE; > x >--- >(0 Rows) > >phlegma=# SELECT max(x) FROM test WHERE FALSE; > max >----- > >(1 Rows) > >phlegma=# So, if I use the max() aggregate, I receive one row with the value NULL. Is that correct? My background is the language plpgsql: I expected to test for the existance of a maximum with (...) SELECT INTO e max( y ) AS x FROM (table) WHERE (condition); IF NOT FOUND THEN RETURN; END IF; (...) But I have to test with: (...) SELECT INTO e max( y ) AS x FROM (table) WHERE (condition); IF e.x IS NULL THEN RETURN; END IF; (...) Thanks in advance, Wilhelm ---------------------------(end of broadcast)--------------------------- TIP 7: don't forget to increase your free space map settings