すべてのプロダクト
Search
ドキュメントセンター

ApsaraDB RDS:ST_IsRing

最終更新日:Mar 29, 2026

`LINESTRING` ジオメトリが閉じていて単純であるか、つまり有効なリングを形成するかどうかをテストします。

ST_IsRing は、次の両方の条件が満たされた場合に true を返します。

  • ST_IsClosed: `LINESTRING` の始点と終点が同一である (`ST_StartPoint(g) = ST_EndPoint(g)`)

  • ST_IsSimple: `LINESTRING` が自己交差しない

どちらかの条件が満たされない場合、ST_IsRingfalse を返します。

構文

boolean ST_IsRing(geometry g);

パラメーター

パラメーター説明
g指定するジオメトリオブジェクト。

次の例では、2 つの `LINESTRING` ジオメトリをテストし、ST_IsClosedST_IsSimpleST_IsRing の結果をどのように決定するかを示します。

閉じている単純な LINESTRING — true を返す

ジオメトリ LINESTRING(0 0,0 2,2 0,0 0) は三角形を形成します。始点 (0,0) は終点 (0,0) と等しく、ラインは自己交差しません。

SELECT ST_IsRing(geom), ST_IsClosed(geom), ST_IsSimple(geom)
FROM (SELECT 'LINESTRING(0 0,0 2,2 0,0 0)'::geometry AS geom) AS test;
 st_isring | st_isclosed | st_issimple
-----------+-------------+-------------
 t         | t           | t
(1 row)

閉じているが自己交差する LINESTRING — false を返す

ジオメトリ LINESTRING(0 0,0 2,0 0) は閉じていますが (始点と終点が同じ)、それ自体に沿って後戻りするため、単純ではありません。ST_IsRingST_IsSimple が失敗するため、false を返します。

SELECT ST_IsRing(geom), ST_IsClosed(geom), ST_IsSimple(geom)
FROM (SELECT 'LINESTRING(0 0,0 2,0 0)'::geometry AS geom) AS test;
 st_isring | st_isclosed | st_issimple
-----------+-------------+-------------
 f         | t           | f
(1 row)