gpt4 book ai didi

sql - postgreSQL 根据 ID 匹配从一个表更新到另一个表

转载 作者:行者123 更新时间:2023-11-29 11:33:20 25 4
gpt4 key购买 nike

我有一个包含sitescounties 的数据库。每个站点都位于一个县。在 sites 表中,已经提到了县,但我想用 ID 替换它,它在另一个表中。

我的更新代码如下:

UPDATE sites
SET cgid = c.gid
FROM (select c.gid as a from counties c
INNER JOIN sites s
ON c.name = s.county) p;

sites 已更新,尽管 cgid 列中的每个值都是相同的(第一个县的 ID)。我该怎么做才能获得正确的值?

最佳答案

update 语句的目标表不应该在 from 子句中重复

所以我想你想要这个:

UPDATE sites s
SET cgid = c.gid
FROM counties c
where c.name = s.county;

这假设 counties.namesites.county 都是唯一的。

关于sql - postgreSQL 根据 ID 匹配从一个表更新到另一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40378539/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com