ST_IsEmpty

Definición

ST_IsEmpty devuelve 1 (Oracle) o t (PostgreSQL) si el objeto ST_Geometry está vacío; de lo contrario, devuelve 0 (Oracle) o f (PostgreSQL).

Sintaxis

sde.st_isempty (g1 sde.st_geometry)

Tipo de devolución

Booleano

Ejemplo

La declaración CREATE TABLE a continuación crea la tabla empty_test con geotipo, que almacena el tipo de datos de las subclases que se almacenan en la columna ST_Geometry g1.

Las declaraciones INSERT insertan dos registros de punto, cadena de texto de líneas y de polígonos de las subclases de geometría: uno que está vacío y uno que no.

Oracle

CREATE TABLE empty_test (geotype varchar(20), g1 sde.st_geometry);   INSERT INTO EMPTY_TEST VALUES ( 'Point', sde.st_pointfromtext ('point (10.02 20.01)', 0) );  INSERT INTO EMPTY_TEST VALUES ( 'Point', sde.st_pointfromtext ('point empty', 0) );  INSERT INTO EMPTY_TEST VALUES ( 'Linestring', sde.st_linefromtext ('linestring (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0) );  INSERT INTO EMPTY_TEST VALUES ( 'Linestring', sde.st_linefromtext ('linestring empty', 0) );  INSERT INTO EMPTY_TEST VALUES ( 'Polygon', sde.st_polyfromtext ('polygon ((10.02 20.01, 11.92 35.64, 25.02 34.15, 19.15 33.94, 10.02 20.01))', 0) );

PostgreSQL

CREATE TABLE empty_test (geotype varchar(20), g1 sde.st_geometry);  INSERT INTO empty_test VALUES ( 'Point', sde.st_point ('point (10.02 20.01)', 0) );  INSERT INTO empty_test VALUES ( 'Point', sde.st_point ('point empty', 0) );  INSERT INTO empty_test VALUES ( 'Linestring', sde.st_linestring ('linestring (10.02 20.01, 10.32 23.98, 11.92 25.64)', 0) );  INSERT INTO empty_test VALUES ( 'Linestring', sde.st_linestring ('linestring empty', 0) );  INSERT INTO empty_test VALUES ( 'Polygon', sde.st_polygon ('polygon ((10.02 20.01, 11.92 35.64, 25.02 34.15, 19.15 33.94, 10.02 20.01))', 0) );

La consulta SELECT devuelve el tipo de geometría de la columna geotipo y los resultados de la función ST_IsEmpty.

Oracle

SELECT geotype, sde.st_isempty (g1) Is_it_empty FROM EMPTY_TEST;  GEOTYPE    Is_it_empty  Point         0 Point         1 Linestring    0 Linestring    1 Polygon       1

PostgreSQL

SELECT geotype, sde.st_isempty (g1) AS Is_it_empty FROM empty_test;  geotype   is_it_empty  Point         f Point         t Linestring   f Linestring    t Polygon       f

3/6/2012