ST_NumInteriorRing
定義
ST_NumInteriorRings は、ST_Polygon を入力として、その内部リングの数を返します。
構文
sde.st_numinteriorring (pl1 sde.st_geometry)
戻り値のタイプ
Integer
例
鳥類学者は、南海の島々に生息する鳥を調査したいと考えています。彼女は、目的の鳥類の餌場が淡水の湖に限られるため、1 つ以上の湖がある島を特定したいと考えています。
islands テーブルの ID 列と name 列は各島を識別します。land ST_Polygon 列は、島のジオメトリを格納します。
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) );
内部リングは湖を表すため、ST_NumInteriorRing 関数は、少なくとも 1 つの内部リングを持つ島だけをリストします。
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