Postgres ON CONFLICT - ссылка на столбец неоднозначна - PullRequest
0 голосов
/ 25 марта 2019

У меня есть таблица:

create table c (
    e text not null,
    m text not null,
    p numeric not null,
    PRIMARY KEY (e, m)
);

, и я хочу сделать вставку или обновление, которое добавляет p к существующему значению:

insert into c values (...) on conflict (e, m) do update set
            p = p + excluded.p

, и я получаю ошибку:

ОШИБКА: ссылка на столбец "p" неоднозначна

насколько она неоднозначна?Как мне написать мою вставку, чтобы добавить excluded.p к уже существующему значению?

1 Ответ

1 голос
/ 25 марта 2019

Ну, вы, вероятно, хотите:

        p = c.p + excluded.p

Возможно, что вы хотите:

        p = excluded.p + excluded.p

Вам необходимо указать.

...