Re: IS NOT NULL and LEFT JOIN

Поиск
Список
Период
Сортировка
От Laurent Martelli
Тема Re: IS NOT NULL and LEFT JOIN
Дата
Msg-id 54457869.3030601@enercoop.org
обсуждение исходный текст
Ответ на Re: IS NOT NULL and LEFT JOIN  (Tom Lane <tgl@sss.pgh.pa.us>)
Ответы Re: IS NOT NULL and LEFT JOIN  (David G Johnston <david.g.johnston@gmail.com>)
Список pgsql-performance
Le 20/10/2014 15:58, Tom Lane a écrit :
> Laurent Martelli <laurent.martelli@enercoop.org> writes:
>> Do we agree that both queries are identical ?
> No, they *aren't* identical.  Go consult any SQL reference.  Left join
> conditions don't work the way you seem to be thinking: after the join,
> the RHS column might be null, rather than equal to the LHS column.
Yes, I was wrong to assume that c.user_info=u.id because of the LEFT JOIN.

But since I only want rows where u.id IS NOT NULL, in any case I will
also have c.user_info IS NOT NULL.

Also, having a foreign key, if c.user_info is not null, it will have a
match in u. So in that case, either both c.user_info and c.id are null
in the result rows, or they are equal.

Regards,
Laurent


В списке pgsql-performance по дате отправления:

Предыдущее
От: Marco Di Cesare
Дата:
Сообщение: Query with large number of joins
Следующее
От: David G Johnston
Дата:
Сообщение: Re: IS NOT NULL and LEFT JOIN