【发布时间】:2020-12-05 04:46:13
【问题描述】:
我在 postgis 中有一张两张桌子。一个是 Bank,它是点,另一个是 IndiaState,它是多边形。这两个表都有一个名为 State 的列。对于 Bank state 列是空的并且 IndiaState 表 state 列具有州名。我想使用 ST_Intersects 填充 Bank 表中的状态列。 我可以选择属于特定状态的银行积分
select ST_Intersection("IndiaState".geom, TN_Bank.geom) as inter
"Bank_Name", "Lat"
from "IndiaState" INNER JOIN TN_Bank ON ST_Intersects("IndiaState".geom, TN_Bank.geom)
where "IndiaState".state='KERALA'
上面的 sql 返回 66 行,这是正确的。
但是更新命令不能正常工作
update TN_Bank set "State"='KERALA' from
(select ST_Intersection("IndiaState".geom, TN_Bank.geom) as inter
"Bank_Name", "Lat"
from "IndiaState" INNER JOIN TN_Bank ON ST_Intersects("IndiaState".geom, TN_Bank.geom)
where "IndiaState".state='KERALA')x
它正在更新 Bank 表中的所有行。 请帮忙。
【问题讨论】:
标签: postgresql postgis