Re: WIP json generation enhancements
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Hannu Krosing <hannu@2ndQuadrant.com>
Cc: Peter Eisentraut <peter_e@gmx.net>, Andrew Dunstan <andrew@dunslane.net>, PostgreSQL-development <pgsql-hackers@postgresql.org>
Date: 2012-11-26T20:05:44Z
Lists: pgsql-hackers
Hannu Krosing <hannu@2ndQuadrant.com> writes: > In some previous mail Tom Lane claimed that by SQL standard > either an array of all NULLs or a record with all fields NULLs (I > don't remember which) is also considered NULL. If this is true, > then an empty array - which can be said to consist of nothing > but NULLs - should itself be NULL. What I think you're referring to is that the spec says that "foo IS NULL" should return true if foo is a record containing only null fields. That's a fairly narrow statement. It does NOT say that NULL and (NULL,NULL,...) are indistinguishable for all purposes; only that this particular test doesn't distinguish them. Also I don't think they have the same statement for arrays. The analogy to other aggregates is probably a better thing to argue from. On the other hand, I don't know anyone outside the SQL standards committee who thinks it's actually a good idea that SUM() across no rows returns null rather than zero. regards, tom lane