首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么我在关于冲突插入的PG中有一个模棱两可的专栏?

为什么我在关于冲突插入的PG中有一个模棱两可的专栏?
EN

Stack Overflow用户
提问于 2019-06-07 02:45:47
回答 1查看 54关注 0票数 0

以下是我的疑问:

代码语言:javascript
复制
insert into zoning_algorithm_value (algorithm_value_id, value, zoning_id)
values (
           61,
           21,
           7321
       )
on conflict(algorithm_value_id)
    DO
        update set value = 21 where zoning_id = 7321 and algorithm_value_id = 61;

我只指一张桌子。这是我正在犯的错误。

42702错误:列引用"zoning_id“不明确

如果只有一个表和一个具有该名称的列,那么它怎么可能是模糊的呢?我怎样才能使它恢复工作呢?

EN

回答 1

Stack Overflow用户

发布于 2019-06-07 04:02:28

您要么需要指定表名,要么需要在EXCLUDED子句中的字段之前指定WHERE

例如,如果您只想在“新”valuealgorithm_value_id分别为7321和61时更新algorithm_value_id

代码语言:javascript
复制
insert into zoning_algorithm_value (algorithm_value_id, value, zoning_id)
values (61, 21, 7321)
on conflict(algorithm_value_id)
    DO
        update set value = 21 where EXCLUDED.zoning_id = 7321 and EXCLUDED.algorithm_value_id = 61;

如果希望WHERE引用“现有”记录值,请使用表名。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56487372

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档