ST_Dump:
这是一个集合返回函数(SRF)。它返回一组geometry_dump行,由一个geometry(geom)和一个整数数组(path)组成。当输入几何体是简单类型(点、线串、多边形)时,将返回一条记录,其中包含一个空路径数组,并将输入几何体作为geom。当输入几何体是一个集合或多个集合时,它将返回每个集合组件的记录,路径将表示组件在集合中的位置。
st_Dump可用于扩展几何图形。它与groupby相反,因为它创建新行。例如,它可以用于将多多边形展开为多边形。
select ST_AsEWKT(the_geom) from chp02.use_area;
select ST_AsEWKT((ST_Dump(the_geom)).geom) from chp02.use_area;
select ST_AsEWKT((ST_DumpPoints(ST_ExteriorRing((ST_Dump(the_geom)).geom))).geom) from chp02.use_area;
select ST_MakeLine(geom) from (SELECT (ST_DumpPoints(ST_ExteriorRing((ST_Dump(the_geom)).geom))).geom from chp02.use_area) as line;
统计点的个数:
select count(geom) from (SELECT (ST_DumpPoints(ST_ExteriorRing((ST_Dump(the_geom)).geom))).geom from chp02.use_area) as line;
其他:
1. SELECT ST_Union(geom) AS geom FROM ( SELECT chp02.polygon_to_line(the_geom) AS geom FROM chp02.use_area ) AS unioned;
2. SELECT ST_Polygonize(geom) AS geom FROM ( SELECT ST_Union(geom) AS geom FROM ( SELECT chp02.polygon_to_line(the_geom) AS geom FROM chp02.use_area ) AS unioned ) as polygonized;
3.