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