Name

ST_Equals — Testar om två geometrier innehåller samma uppsättning punkter

Synopsis

boolean ST_Equals(geometry A, geometry B);

Beskrivning

Returnerar sant om de givna geometrierna är "topologiskt lika". Använd detta för ett "bättre" svar än "=". Topologisk likhet innebär att geometrierna har samma dimension och att deras punktuppsättningar upptar samma utrymme. Detta innebär att ordningen på hörnen kan vara olika i topologiskt lika geometrier. För att verifiera att punktordningen är konsekvent använd ST_OrderingEquals (det måste noteras att ST_OrderingEquals är lite strängare än att bara verifiera att punktordningen är densamma).

I matematiska termer: ST_Equals(A, B) ⇔ A = B

Följande relation gäller: ST_Equals(A, B) ⇔ ST_Within(A,B) ∧ ST_Within(B,A)

[Important]

Förbättrad: 3.0.0 aktiverade stöd för GEOMETRYCOLLECTION

Denna metod implementerar OGC:s implementeringsspecifikation för enkla funktioner för SQL 1.1. s2.1.1.2

Denna metod implementerar SQL/MM-specifikationen. SQL-MM 3: 5.1.24

Ändrad: 2.2.0 Returnerar sant även för ogiltiga geometrier om de är binärt lika

Exempel

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)