首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Postgis函数

Postgis函数
EN

Stack Overflow用户
提问于 2020-10-05 20:47:15
回答 1查看 50关注 0票数 0

我在postgres中有一个表,其中包含一些区域和地理数据类型(多边形格式),另一个表中包含产品名称和地理位置(point,4326)。我尝试了这个查询

代码语言:javascript
复制
“select st_intersects(schema1.tableA.geom1,schema2.tableB.geom2) from schema1.tableA inner join schema2.tableB on st_intersects(schema1.tableA.geom1,schema2.tableB.geom2)

或者这个:

代码语言:javascript
复制
”select prod_id from schema1.tableA inner join schema2.tableB on  st_intersects(schema1.tableA.geom1,schema2.tableB.geom2) where 
st_intersects(schema1.tableA.geom1,schema2.tableB.geom2).”

这两个都是在没有任何输出的情况下运行,并且没有停止。其目的是获得特定领域的产品。Postgis扩展已安装,我可以将其用于此数据库上的其他任务。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-10-05 23:43:57

您的第二个查询只能使用嵌套循环连接执行,如果两个表都很大,则执行速度将始终很慢。第一个查询有两次联接条件,这不会有什么不同,只是查询速度会更慢。

在两个表中较大的一个上,您应该在几何列上创建一个GiST索引,这将尽可能加快处理速度。如果多边形很大,并且有很多点,这将使查询速度变慢。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/64208913

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档