Re: Proposal: revert behavior of IS NULL on row types

From: Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk>
To: "David G(dot) Johnston" <david(dot)g(dot)johnston(at)gmail(dot)com>
Cc: "pgsql-hackers\(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Proposal: revert behavior of IS NULL on row types
Date: 2016-07-23 02:04:46
Message-ID: 8760rxqfjs.fsf@news-spur.riddles.org.uk
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

>>>>> "Andrew" == Andrew Gierth <andrew(at)tao11(dot)riddles(dot)org(dot)uk> writes:

>>> Whole-row vars when constructed never contain the null value.

David> ...but what does this mean in end-user terms?​

Andrew> It means for example that this query:

Andrew> select y from x left join y on (x.id=y.id) where y is null;

Andrew> would always return 0 rows.

On second thoughts I'll take this one back. Specifying that whole-row
vars don't contain the null value when constructed doesn't actually
result in no rows, since the construction is logically below the join;
and hence even with that rule in place, the query would return a row for
each non-matched "x" row.

--
Andrew (irc:RhodiumToad)

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Andreas Karlsson 2016-07-23 02:28:40 Re: fixes for the Danish locale
Previous Message Jim Nasby 2016-07-23 01:49:07 Re: Proposal: revert behavior of IS NULL on row types