= —
Aのバウンダリボックスが,Bのバウンダリボックスと同じ場合にTRUE
を返します.
boolean =(
geometry
A
,
geometry
B
)
;
boolean =(
geography
A
,
geography
B
)
;
=
演算子は,ジオメトリ/ジオグラフィAのバウンダリボックスが,Bのバウンダリボックスと同じ場合にTRUE
を返します.
PostgreSQLは,ジオメトリが内部の並べ替えの実行やジオメトリの比較を行うために定義した=, <, >演算子を使います(GROUP BYやORDER BY節).
![]() | |
この節は多数の混乱の元です.geometryA = geometryBの比較を行うと,ジオメトリが明確に異なっていたとしても,バウンディングボックスが同じなら |
![]() | |
この演算子はジオメトリで使用できるインデクスを*使いません*. |
このメソッドは曲線ストリングと曲線をサポートします.
SELECT 'LINESTRING(0 0, 0 1, 1 0)'::geometry = 'LINESTRING(1 1, 0 0)'::geometry; ?column? ---------- t (1 row) SELECT ST_AsText(column1) FROM ( VALUES ('LINESTRING(0 0, 1 1)'::geometry), ('LINESTRING(1 1, 0 0)'::geometry)) AS foo; st_astext --------------------- LINESTRING(0 0,1 1) LINESTRING(1 1,0 0) (2 rows) -- Note: the GROUP BY uses the "=" to compare for geometry equivalency. SELECT ST_AsText(column1) FROM ( VALUES ('LINESTRING(0 0, 1 1)'::geometry), ('LINESTRING(1 1, 0 0)'::geometry)) AS foo GROUP BY column1; st_astext --------------------- LINESTRING(0 0,1 1) (1 row)