ERROR: column reference "page_seq" is ambiguous
таблица
CREATE TABLE envelope
(
id int,
user_id int
);
CREATE TABLE docs
(
id_num int,
page_seq int,
doc_text varchar(100)
);
INSERT INTO envelope
VALUES (1, 1),
(2, 2),
(3, 3);
INSERT INTO docs(id_num, page_seq)
VALUES (1, 5),
(2, 6),
(null, 0);
Запрос на обновление таблицы
UPDATE docs
SET doc_text = d.page_seq
FROM docs d
INNER JOIN envelope ON envelope.id = d.id_num
WHERE EXISTS(
SELECT 1
FROM docs
WHERE id = envelope.id and d.id_num is not null
) ;
результат
Результат не верный, почему-то значение из одной строки, обновило и другие, хотя они и не соответствуют ????
Должно быть
(1, 5, 5)
(2, 6, 6)
(null, 0, null) - не должна обновляться
Обновление
Выше предложенное решение взято из задач и ответов (SQL server). и запрос гаранитированно должен обновить для каждой строки свое значение.
