Re: Bug #938: Wrong UPDATE if exist INNER JOIN and alias for table

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: Bug #938: Wrong UPDATE if exist INNER JOIN and alias for table
Дата
Msg-id 26536.1049810963@sss.pgh.pa.us
обсуждение исходный текст
Ответ на Bug #938: Wrong UPDATE if exist INNER JOIN and alias for table  (pgsql-bugs@postgresql.org)
Список pgsql-bugs
pgsql-bugs@postgresql.org writes:
> UPDATE test1 SET value = 10 FROM test1 t1 INNER JOIN test2 ON t1.extid=test2.extid WHERE t1.id=1;

> This expression update all record i table "test1".

Yup, that's what it should do.  "FROM test1 t1" adds an additional table
reference that's unconnected to the update target table.  You should
have written

UPDATE test1 SET value = 10
FROM test2 WHERE test1.extid=test2.extid AND test1.id=1;

            regards, tom lane

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

Предыдущее
От: pgsql-bugs@postgresql.org
Дата:
Сообщение: Bug #938: Wrong UPDATE if exist INNER JOIN and alias for table
Следующее
От: Stephan Szabo
Дата:
Сообщение: Re: Bug #938: Wrong UPDATE if exist INNER JOIN and alias