Guía y consulta del usuario

ST_Equals

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;


[ Principio de página | Página anterior | Página siguiente | Contenido | Índice ]