Postgres ON CONFLICT 设置列引用不明确
Postgres ON CONFLICT set column reference is ambiguous
我有一个 table:
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
我得到一个错误:
ERROR: column reference "p" is ambiguous
怎么这么暧昧?我应该如何编写插入内容以将 excluded.p
添加到现有值?
嗯,你可能想要:
p = c.p + excluded.p
您可能想要:
p = excluded.p + excluded.p
您需要指定。
我有一个 table:
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
我得到一个错误:
ERROR: column reference "p" is ambiguous
怎么这么暧昧?我应该如何编写插入内容以将 excluded.p
添加到现有值?
嗯,你可能想要:
p = c.p + excluded.p
您可能想要:
p = excluded.p + excluded.p
您需要指定。