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

ApsaraDB RDS:ST_Dump

最終更新日:Mar 29, 2026

ジオメトリオブジェクトから geometry_dump レコードのセットを返し、コレクションを個々のコンポーネントに展開します。

構文

geometry_dump[] ST_Dump(geometry g1);

パラメーター

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

説明

ST_Dump は、ジオメトリオブジェクトのコンポーネントを抽出します。返される各 geometry_dump レコードには、次の 2 つのフィールドが含まれます:

  • geom:コンポーネントのジオメトリオブジェクト

  • path:元のジオメトリ内でのコンポーネントの位置を示す整数配列

動作は入力タイプによって異なります:

  • Point、LineString、またはポリゴン入力 — 空の path 配列と入力ジオメトリを geom として含む単一のレコードを返します。

  • マルチジオメトリまたはコレクション入力 — コンポーネントごとに 1 つのレコードを返し、コレクション内での各コンポーネントの位置を示す path 配列を含みます。

ST_DumpGROUP BY の逆の操作です。GROUP BY が行を集約して単一のジオメトリにするのに対し、ST_Dump は単一のジオメトリを複数の行に展開します。典型的なユースケースは、MultiPolygon を個々のポリゴンに展開することです。

この関数は、Circular String、曲線、Polyhedral Surface、Triangle、不規則三角形網 (TIN) サーフェス、3D オブジェクトなどのジオメトリタイプをサポートします。

次の例では、MULTILINESTRING をそのコンポーネントである LINESTRING ジオメトリに展開します。path 列は、各コンポーネントの位置を示します。

SELECT (t.dump).path, ST_AsText((t.dump).geom)
FROM (
  SELECT ST_Dump('MULTILINESTRING((0 0,0 2),(0 1,0 3))'::geometry) AS dump
) AS t;

出力:

 path |      st_astext
------+---------------------
 {1}  | LINESTRING(0 0,0 2)
 {2}  | LINESTRING(0 1,0 3)
(2 rows)