Answers:
的geometry_dump
数据类型是一个简单的复合型有两个字段:
path[]
—一维数组,其中保存转储对象中的几何图形位置,以及geom
—原始的简单几何子集,这就是您想要的。要访问geom
,只需使用(ST_Dump(the_geom)).geom
(需要额外的括号,当从复合类型访问成员时,这有点麻烦)。例如:
WITH data AS (SELECT 'MULTIPOLYGON (((170 190, 110 150, 200 120, 170 190)),
((220 160, 230 110, 280 120, 220 160)),
((220 200, 260 240, 270 190, 220 200)))'::geometry AS the_geom)
SELECT ST_AsText( (ST_Dump(the_geom)).geom )
FROM data;
st_astext
--------------------------------------------
POLYGON((170 190,110 150,200 120,170 190))
POLYGON((220 160,230 110,280 120,220 160))
POLYGON((220 200,260 240,270 190,220 200))
(3 rows)
该PostGIS的手册有ST_Dump其他很好的例子。