On Wed, Apr 27, 2011 at 4:46 AM, Jack Douglas <[email protected]> wrote: > The boolean type can have one of only two states: "true" or "false". > A third state, "unknown", is represented by the SQL null value. > > This sounds like an oxymoron to me.
I'm not crazy about that paragraph's confusion between two and three states either, but.. > Perhaps that sentence should be changed > to: > > The boolean type can have one of three states: "true" or "false" and > "unknown". The third state, "unknown", is represented by the SQL null value. > or: > > The boolean type can have one of three states: "true" or "false" and > null. The third state, null, represents the logical value "unknown". I don't think either of these suggested replacements are any better. First, a boolean column can be declared NOT NULL. Second, I don't like the idea of misleading people into thinking that NULL is on equal footing with the other values of a given datatype, particularly as your first alternative implies. I'd vote for just ripping out the: | A third state, "unknown", is represented by the SQL null value. sentence entirely. I see no reason why NULL should be talked about in particular on the page about boolean data types; there are many data types, any of which might be NULL. I almost think it would be worthwhile to have a section in the docs on the (counterintuitive) behaviors of NULL, such as this great post: <http://thoughts.j-davis.com/2009/08/02/what-is-the-deal-with-nulls/> -- or maybe just a link to that page. Josh -- Sent via pgsql-docs mailing list ([email protected]) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-docs
