ST_Dump

返回一个组成输入Geometry对象g1的geometry_dump (geom,path) 行集合。

语法

geometry_dump[]  ST_Dump(geometry  g1);

参数

参数名称

描述

g1

目标Geometry对象。

描述

  • 该函数会返回组成输入对象的geometry_dump行集合和行的位置值。

    • 当输入类型是(Point,LineString,Polygon),返回的是一个空的数组和一个与输入对象一样的Geometry对象形成的一条记录。

    • 当输入对象是一个Collection或者Multi类型的Collection,该函数会返回每一个Collection的组成和组成每一个Collection的每一个元素的位置下标。

  • 该函数在展开Geometry对象时很有用,它与GROUP BY子句的功能是相反的。该函数可以用来把MultiPolygon展开成Polygon。

  • 该函数支持Circular Strings、Curves、Polyhedral surfaces、Triangles and Triangulated Irregular Network Surfaces(TIN)和3D对象。

示例

默认调用:

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)