0

我正在使用 mysql 来计算多边形特征(postsec)内的点特征(商店)的数量。

我的选择查询工作正常,但我想用生成的结果更新表 postsec。我的查询如下:

select pc_sec, count(*) as count from shops 
join postsec on st_within(shops.SHAPE,postsec.SHAPE) 
where shops.shop_cat > 0 and shop_cat < 10 group by pc_sec

我已经尝试了多种方法来执行此操作,例如 update postsec set new_column = ([select query]) 但似乎找不到正确的方法。

4

1 回答 1

1

像这样的东西应该工作

update postsec 
inner join 
(
   select pc_sec, count(*) as pseccount 
   from shops 
   join postsec on st_within(shops.SHAPE,postsec.SHAPE) 
   where shops.shop_cat between 1 and 9
   group by pc_sec
) x on x.pc_sec = postsec.id
set count_column = x.pseccount 
于 2014-01-04T17:50:14.030 回答