2009/12/18 Grzegorz Jaśkiewicz <gryzman@gmail.com>:
> 2009/12/18 Robert Haas <robertmhaas@gmail.com>:
>> 2009/12/18 Grzegorz Jaśkiewicz <gryzman@gmail.com>:
>>> On Fri, Dec 18, 2009 at 2:18 PM, Robert Haas <robertmhaas@gmail.com> wrote:
>>>
>>>> NOT IN is the only that really kills you as far as optimization is
>>>> concerned. IN can be transformed to a join. NOT IN forces a NOT
>>>> (subplan)-type plan, which bites - hard.
>>>
>>> in a well designed database (read: not abusing NULLs) - it can be done
>>> with joins too.
>>
>> But not by PostgreSQL, or so I believe.
>
> using left join ?
If at least one column in the subselect is strict, you can rewrite it
that way yourself, but the optimizer won't do it. I wish it did, but I
don't wish it badly enough to have written the code myself, and
apparently neither does anyone else.
...Robert