Re: BUG #5972: Update with subquery: erroneous results for foreign key field

Поиск
Список
Период
Сортировка
От Kevin Grittner
Тема Re: BUG #5972: Update with subquery: erroneous results for foreign key field
Дата
Msg-id 4DA41058020000250003C6C9@gw.wicourts.gov
обсуждение исходный текст
Ответ на BUG #5972: Update with subquery: erroneous results for foreign key field  ("Paul" <paul.cocei@punct.ro>)
Ответы Re: BUG #5972: Update with subquery: erroneous results for foreign key field  (Paul Cocei <paul.cocei@punct.ro>)
Список pgsql-bugs
"Paul" <paul.cocei@punct.ro> wrote:

> update cart set status = 1 where userid = (select userid from
> users where email = 'example@example.com');
>
> As you can see, the subquery is broken (users table doesn't have
> the column userid).

By standard, if the identifier isn't defined within the most local
scope, each enclosing scope, from the inside out, will be checked.
I would expect the above to update each row where cart.userid was
not null.

I always use and recommend aliases where practical.  If you wrote it
this way, such a mistake would be clearly identified:

update cart set status = 1 where userid = (select u.userid from
users u where u.email = 'example@example.com');

Not a bug.

-Kevin

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

Предыдущее
От: "Paul"
Дата:
Сообщение: BUG #5972: Update with subquery: erroneous results for foreign key field
Следующее
От: Paul Cocei
Дата:
Сообщение: Re: BUG #5972: Update with subquery: erroneous results for foreign key field