ST_Equals compara dos geometrías y devuelve 1 (TRUE) si las geometrías son idénticas y 0 (FALSE) si no es así.
Sintaxis
db2gse.ST_Equals(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)
Tipo devuelto
Entero
Ejemplos
El técnico de GIS sospecha que algunos datos de la tabla BUILDINGFOOTPRINTS están duplicados. El técnico consulta la tabla para determinar si algunas de las geometrías varios polígonos de las áreas edificadas son iguales.
La tabla BUILDINGFOOTPRINTS se crea con la siguiente sentencia. La columna BUILDING_ID identifica de forma exclusiva los edificios, la columna LOT_ID identifica la parcela del edificio y la columna FOOTPRINT almacena la geometría del edificio.
CREATE TABLE BUILDINGFOOTPRINTS ( building_id integer, lot_id integer, footprint db2gse.ST_MultiPolygon);
La tabla BUILDINGFOOTPRINTS se une espacialmente a sí misma mediante el predicado ST_Equals, el cual devuelve 1 si encuentra dos geometrías varios polígonos iguales. Se necesita la condición bf1.building_id <> bf2.building_id para eliminar la comparación de la misma geometría.
SELECT bf1.building_id, bf2.building_id FROM BUILDINGFOOTPRINTS bf1, BUILDINGFOOTPRINTS bf2 WHERE db2gse.ST_Equals(bf1.footprint,bf2.footprint) = 1 and bf1.building_id <> bf2.building_id;