ST_NumInteriorRing

Definición

ST_NumInteriorRings toma un ST_Polygon y devuelve el número de sus anillos interiores.

Sintaxis

sde.st_numinteriorring (pl1 sde.st_geometry)

Tipo de devolución

Entero

Ejemplo

Un ornitólogo quiere estudiar una población de aves en varias islas del mar del sur. Quiere identificar qué islas contienen uno o más lagos, ya que las especies de aves en las que está interesada se alimentan solo en lagos de agua dulce.

Las columnas de Id. y nombre de la tabla de islas identifica cada isla, mientras que la columna ST_Polygon de tierras almacena la geometría de las islas.

CREATE TABLE islands (id integer,
name varchar(32),
land sde.st_geometry);

INSERT INTO islands VALUES (
1,
'Bear',
sde.st_polygon ('polygon ((40 120, 90 120, 90 150, 40 150, 40 120),(50 130, 60 130, 60 140, 50 140, 50 130),(70 130, 80 130, 80 140, 70 140, 70 130))', 0)
);

INSERT INTO islands VALUES (
2,
'Johnson',
sde.st_polygon ('polygon ((10 10, 50 10, 10 30, 10 10))', 0)
);

Ya que los anillos interiores representan los lagos, la función ST_NumInteriorRing enumera solo aquellas islas que tienen al menos un anillo interior.

Oracle

SELECT name
FROM ISLANDS
WHERE sde.st_numinteriorring (land)> 0;

NAME

Bear

PostgreSQL

SELECT name
FROM ISLAND
WHERE sde.st_numinteriorring (land)> 0;

name

Bear

7/11/2012