Tengo un par de featureclasses en una geodatabase 10.2 / base de datos PostgreSQL 9.2.2 y he estado luchando con la herramienta FeatureCompare - me está diciendo que las geometrías son diferentes en algunas características donde sé que son al menos espacialmente iguales.
Por suerte, tengo un ID y pude unir las 2 tablas en PGAdmin y comparar la geometría. El ~=
y ST_Equals devuelven verdadero para cada fila. Entonces modifiqué 1 característica moviendo 1 vértice 800 pies al sur.
Cuando ejecuto mi consulta, ST_Equals devuelve false, que es lo que esperaba. Pero ~=
sigue devolviendo true??? ¿Por qué?
select t1.shape,t2.shape ,(t1.shape ~= t2.shape) as exactequal , ST_Equals(t1.shape , t2.shape) spatialequal, (t1.shape = t2.shape) bndequal
from pg.Test1 t1
inner join pt.Bnd2 t2
on t1.polygon_id=t2.polygon_id
where t1.objectid = 6389
Intento averiguar si se trata de un error o si estoy malinterpretando a los operadores.
"PostgreSQL 9.2.2, compilado por Visual C++ build 1600, 64-bit"
" POSTGIS="2.0.4" GEOS="3.4.2-CAPI-1.8.2 r0" PROJ="Rel. 4.8.0, 6 de marzo de 2012" GDAL="GDAL 1.10.0, publicado el 24/04/2013"