名前

ST_Equals — 二つのジオメトリが同じポイント集合を空間に持っている場合にはTRUEを返します。

概要

boolean ST_Equals(geometry A, geometry B);

説明

与えられたジオメトリ表現が「空間的に同じ」場合にはTRUEを返します。'='よりも「よりよい」答を得るために使います。空間的に同じということは、ST_Within(A,B) = trueかつST_Within(B,A) = trueとなります。また、ポイントの順序が違っても同じジオメトリ構造ならtrueとなります。構成ポイントの順序の確認にはST_OrderingEqualsを使用します (ST_OrderingEqualsはポイントのオーダが同じかを確認するよりも若干厳しくなります)。

[重要]

この関数は、バイナリで同じ場合を除いて、どちらのジオメトリも不正である場合はFALSEを返します。

[重要]

Enhanced: 3.0.0 GEOMETRYCOLLECTIONへの対応が可能となりました

This method implements the OpenGIS Simple Features Implementation Specification for SQL 1.1. s2.1.1.2

This method implements the SQL/MM specification. SQL-MM 3: 5.1.24

Changed: 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)

関連情報

ST_IsValid, ST_OrderingEquals, ST_Reverse, ST_Within