ST_EnvIntersects
Nota:
ST_Geometry solo en Oracle
Definición
ST_EnvIntersects devuelve 1 (verdadero) si intersecan los dos sobres de ST_Geometries; de lo contrario, devuelve 0 (falso).
Sintaxis
sde.st_envintersects (g1 sde.st_geometry, g2 sde.st_geometry) sde.st_envintersects (g1 sde.st_geometry, minx number, miny number, maxx number, maxy number)
Tipo de devolución
Entero (booleana)
Ejemplo
En este ejemplo se busca una parcela que tiene un sobre intersecado por el polígono definido.
CREATE TABLE sample_geoms (id integer, geometry sde.st_geometry); INSERT INTO SAMPLE_GEOMS VALUES ( 1, sde.st_geometry ('linestring (10 10, 50 50)', 0) ); INSERT INTO SAMPLE_GEOMS VALUES ( 2, sde.st_geometry ('linestring (10 20, 50 60)', 0) );
Esta declaración SELECT compara los sobres de dos geometrías y las propias geometrías para ver si las entidades o los sobres intersecan.
SELECT a.id, b.id, sde.st_intersects (a.geometry, b.geometry) Intersects, sde.st_envintersects (a.geometry, b.geometry) Envelope_Intersects FROM SAMPLE_GEOMS a, SAMPLE_GEOMS b WHERE a.id = 1 AND b.id=2; ID ID INTERSECTS ENVELOPE_INTERSECTS 1 2 0 1
También puede especificar un sobre para detectar las entidades, si las hubiera, que se encuentran dentro del sobre que transmita con la cláusula WHERE de la declaración SELECT.
SELECT id FROM SAMPLE_GEOMS WHERE sde.st_envintersects(geometry, 5, 5, 60, 65) = 1; ID 1 2
7/11/2012