Re: undocumented feature or bug in subquery : psql (PostgreSQL) 9.4.6 on SLES12 SP1

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: undocumented feature or bug in subquery : psql (PostgreSQL) 9.4.6 on SLES12 SP1
Дата
Msg-id 26546.1472216834@sss.pgh.pa.us
обсуждение исходный текст
Ответ на undocumented feature or bug in subquery : psql (PostgreSQL) 9.4.6 on SLES12 SP1  (otter117@yahoo.de)
Список pgsql-docs
otter117@yahoo.de writes:
> 2 tables a and b
>                Table "public.a"
>      Column      |           Type           |   Modifiers
> -----------------+--------------------------+---------------
>  foo             | integer                  | not null
>  bar             | integer                  | not null

>                Table "public.b"
>      Column      |           Type           |   Modifiers
> -----------------+--------------------------+---------------
>  bar             | integer                  | not null

> No error when executing this statement even though table b does not contain
> column foo
> SELECT foo,bar FROM a WHERE foo=1 AND bar NOT IN (SELECT bar FROM b WHERE
> bar > 2 AND foo=2)

No, but table a does, and that's a legal outer reference per the SQL
standard.  This is neither a bug nor undocumented.

> Do I need to qualify all columns in the subquery or is this a bug is psql
> 9.4.6?

It's often wise to qualify column references in multi-table queries
(subqueries or not) to ensure they are referencing what you think
they're referencing.

            regards, tom lane


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

Предыдущее
От: Bruce Momjian
Дата:
Сообщение: Re: does md5 really help against sniffing?
Следующее
От: paul.alsemgeest@sogeti.com
Дата:
Сообщение: How to backup