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