ST_NumInteriorRing

Définition

ST_NumInteriorRings accepte un objet ST_Polygon et retourne le nombre de ses boucles intérieures.

Syntaxe

sde.st_numinteriorring (pl1 sde.st_geometry)

Type de retour

Entier

Exemple

Une ornithologue souhaite étudier une population d'oiseaux sur plusieurs îles des mers du sud. Elle souhaite identifier les îles possédant un ou plusieurs lacs, car les espèces d'oiseaux auxquelles elle s'intéresse se nourrissent exclusivement dans les lacs d'eau douce.

Les colonnes ID et name de la table islands identifient chaque île, tandis que la colonne ST_Polygon land stocke la géométrie des îles.

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)
);

Comme les boucles intérieures représentent les lacs, la fonction ST_NumInteriorRing répertorie uniquement les îles possédant au moins une boucle intérieure.

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/10/2012