postgresql - 是否有一种功能可以知道我的几何体中有多少百分比包含在另一个几何体中?

标签 postgresql geometry postgis

我需要知道一个几何体是否大致包含在另一个几何体中。有时,我的几何图形设计不当,其中很小一部分超出了它们应该位于的几何图形。

ST_Contains 无法使用这些错误的几何图形返回 true

我想找到一个 POSTGIS 函数,返回几何 A 包含 X% 的几何 B。示例:ST_containing_rate(geometry A, geometry B) 返回百分比

或者如果几何 A 包含几何 B 的 X%,则返回 true 的函数。示例:ST_contains_at_least(geometry A, geomtry B, percentage p) 返回 true 或 false

最佳答案

一种方法是:

ST_Area(ST_Intersection(geometry A, geometry B)) / ST_Area(geom B) > percentage

关于postgresql - 是否有一种功能可以知道我的几何体中有多少百分比包含在另一个几何体中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58482674/

相关文章:

sql - 为什么添加一个窗口函数会使这个查询变得如此缓慢?

sql - 使用 PostGIS 按给定的纬度和经度查找在 2 英里半径内相交和环绕的记录?

java - 我应该将时区与 Postgres 和 JDBC 的时间戳分开存储吗?

postgresql - 如何在 PostgreSQL 中为 CTE(通用表表达式)指定列类型?

node.js - 使用 express.js 和 PostgreSQL 的 rest api

c++ - 在几何中使用 boost rtree 查找结果点

html - 半径在导航栏中不适应

geometry - 计算点和矩形之间的有符号距离

postgresql - 通过脚本安装postgis扩展

postgresql - 使用自制软件升级到 PostGIS 2.1 和 PostgreSQL 9.3.1 时缺少库