Re: boolean states
От | Josh Kupershmidt |
---|---|
Тема | Re: boolean states |
Дата | |
Msg-id | BANLkTi=hfidffvLMYwpSHcnO3UdGDiNmvQ@mail.gmail.com обсуждение исходный текст |
Ответ на | Re: boolean states (Jack Douglas <jack@douglastechnology.co.uk>) |
Список | pgsql-docs |
On Fri, Apr 29, 2011 at 3:29 AM, Jack Douglas <jack@douglastechnology.co.uk> wrote: > NULL is not unique to boolean, but UNKNOWN is - it would surely be wrong to > have no mention of it at all on this page. This is because the boolean type > is the only one used to represent truth (or logical) values. One of the > comments from the link you provided: > >> What’s even more interesting is that for BOOLEAN they invented the keyword >> UNKNOWN and the 2003 standard states “The null value of the boolean data >> type is equivalent to the Unknown truth value.” So for BOOLEAN (and only >> BOOLEAN AFAICT) you’re supposed to say WHERE <boolean primary> IS [NOT] >> UNKNOWN. And in the definition of “literal”, which is supposed to “Specify a >> non-null value”, “boolean literal” is equated to TRUE, FALSE or UNKNOWN (but >> the latter is equivalent to a “null value” a few pages later). Ah, OK - I had forgotten about that SQL syntax. I do agree that this sentence: | A third state, "unknown", is represented by the SQL null value. is particularly confusing, suggesting that "unknown" is a valid boolean literal, on equal footing with "true" and "false". We do document the use of IS [NOT] UNKNOWN already, see: <http://www.postgresql.org/docs/current/interactive/functions-comparison.html> and IMO that page is the appropriate place for such discussion. So maybe we just need a link to that page, and should strip out the confusing sentence about "third state" entirely? Patch attached. Josh
Вложения
В списке pgsql-docs по дате отправления: