ST_Equals — 测试两个几何图形是否包含同一组点
boolean ST_Equals(
geometry A, geometry B)
;
如果给定的几何图形“拓扑相等”,则返回 true
。 使用它可以获得比“=”更好的答案。 拓扑相等意味着几何具有相同的维度,并且它们的点集占据相同的空间。 这意味着在拓扑相等的几何中,顶点的顺序可能不同。 要验证点的顺序是否一致,请使用ST_OrderingEquals(必须注意 ST_OrderingEquals 比简单地验证点的顺序是否相同更严格)。
用数学术语来说:ST_Equals(A, B) ⇔ A = B
以下关系成立: ST_Equals(A, B) ⇔ ST_Within(A,B) ∧ ST_Within(B,A)
增强:3.0.0 启用了对 |
此方法实现了 SQL 1.1 的 OGC 简单功能规范。 s2.1.1.2
该方法实现了SQL/MM规范。 SQL-MM 3: 5.1.24
更改:2.2.0 即使对于无效几何图形,如果它们二进制相等,也会返回 true
SELECT ST_Equals(ST_GeomFromText('LINESTRING(0 0, 10 10)'), ST_GeomFromText('LINESTRING(0 0, 5 5, 10 10)')); st_equals ----------- t (1 row) SELECT ST_Equals(ST_Reverse(ST_GeomFromText('LINESTRING(0 0, 10 10)')), ST_GeomFromText('LINESTRING(0 0, 5 5, 10 10)')); st_equals ----------- t (1 row)