ST_NumInteriorRing

Definition

ST_NumInteriorRing akzeptiert ein ST_Polygon und gibt die Anzahl der darin enthaltenen inneren Ringe zurück.

Syntax

sde.st_numinteriorring (pl1 sde.st_geometry)

Rückgabetyp

Ganzzahl

Beispiel

Eine Ornithologin möchte die Vogelpopulation auf mehreren Südseeinseln studieren. Sie möchte herausfinden, welche Inseln einen oder mehrere Binnenseen enthalten, weil die Vogelart, an der sie interessiert ist, nur an Süßwasserseen Nahrung sucht.

Durch die Spalten "ID" und "name" der Tabelle "islands" werden die einzelnen Inseln eindeutig gekennzeichnet, und die ST_Polygon-Spalte "land" enthält die Geometrie der einzelnen Inseln.

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

Weil die inneren Ringe die Seen darstellen, listet die Funktion ST_NumInteriorRing nur diejenigen Inseln auf, die über mindestens einen inneren Ring verfügen.

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