我在postgres中有一个多边形表(人口普查块组)。我想用主要位于其中的城镇(另一个多边形表)标记每个街区组。这可能吗?我在想我基本上需要创建如下内容:
select b.*,t.name
from blockgroups b, towns t
where (st_area(st_intersection(b.wkb_geometry, t.wkb_geometry))/st_area(b.wkb_geometry)) > .5
但是这个查询将永远持续下去(我有大约5,000个街区组和375个城镇...)。如果不正确,是否有任何建议可以使该查询正常工作,如果正确,该建议有何建议?
听起来像您想根据最大重叠量标记块组?如果是这样,请参阅此答案。如果您的“城镇”也是人口普查地区(例如MCD或地方),则可能无需计算重叠百分比。
—
dbaston 2014年