使用PostGIS计算多边形内的点数时遇到问题

时间:2017-05-07 00:41:42

标签: gis postgis postgresql-9.4

我正在尝试从一个表中找到位于另一个表中的多边形内的点。两个表都有一个geom列,两个都使用SRID 4326,我使用SELECT ST_SRID(geom) FROM poursafe.ca_licenses LIMIT 1;

确认

我没有用SRID创建多边形表,该SRID应该是2229.所以,我运行它来将它转换为4326,这可能是问题的一部分?

  ALTER TABLE public.ca_la_la_areas_neighborhoods ALTER COLUMN geom TYPE geometry(MultiPolygon,4326)
  USING ST_Transform(ST_SetSRID(geom,2229),4326);

两个表都有空间索引(但是,我不知道他们是否应该使用它们作为我的目标表来运行查询?)

我用来获取计数的查询是:

SELECT count(*)
FROM public.ca_la_la_areas_neighborhoods pol
JOIN poursafe.ca_licenses poi ON (ST_Within(poi.geom, pol.geom));

我已经尝试了这个以及许多其他尝试,除了零作为计数或选择结果之外什么都没有。

CREATE ca_la_la_areas_neighborhoods (
gid INTEGER,
comty_name VARCHAR (40),
cert VARCHAR (3),
shape_star VARCHAR,
shape_stle VARCHAR,
geom GEOM
);

CREATE ca_licenses (
id BIGINT,
license VARCHAR,
type VARCHAR,
master VARCHAR,
lat DOUBLE PRECISION,
lon DOUBLE PRECISION,
geom GEOM
);

0 个答案:

没有答案