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 版本啟用對 |
此方法實作了 OGC Simple Features Implementation Specification for SQL 1.1 的 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)