我刚开始使用 PostGIS 和 Postgresql,大部分情况下一切运行顺利。当我试图找到 MULTIPOLYGON sa POINT 所在的位置时,我被卡住了。我有两个独立的点,我确信它们位于我的数据库中的一个且只有一个形状为 MULTIPOLYGON 数据类型的形状中。它们不是相同的点,它们的格式不同。
示例 1,我不确定它是什么格式,但查询返回了我预期的真值(注意,我通过将数据集加载到 QGIS 中并将鼠标悬停在里面的一个点上找到了这个值)。
在第二个示例中,我对位于我正在查看的形状内的地址进行了地理编码。但是,查询的结果会返回一个错误值。
我使用 shp2pgsql 将数据直接从形状文件加载到我的数据库中。形状文件的 SRID 为 4269(我尝试在 GeomFromText 调用期间指定 SRID 时运行以下查询,但结果相同)。
这两个坐标集有什么区别?我需要做什么才能使用使用 lat/lon 值的 POINTS 执行相交测试?
1.) SELECT ST_Intersects((select the_geom from wardstable where gid=37), ST_GeomFromText('POINT(1172539 1924462)'));
2.) SELECT ST_Intersects((select the_geom from wardstable where gid=37), ST_GeomFromText('POINT(-87.6547884 41.96367)'));
谢谢!