ST_NumGeometries — 返回几何集合中的元素数量。
integer ST_NumGeometries(
geometry geom)
;
该函数返回几何集合(GEOMETRYCOLLECTION 或 MULTI*)中的元素数量。对于非空的原子几何体,它返回 1。对于空的几何体,它返回 0。
增强功能:引入了2.0.0 对多面体曲面、三角形和三角网的支持。
更改:2.0.0 在之前的版本中,如果几何图形不是collection/MULTI 类型,则会返回 NULL。 2.0.0 现在对于单个几何图形返回 1,例如 POLYGON、LINESTRING、POINT。
该方法实现了SQL/MM规范。 SQL-MM 3: 9.1.4
该函数支持 3d 并且不会丢失 z-index。
该函数支持多面体曲面。
此函数支持三角形和不规则三角网面 (TIN)。
--Prior versions would have returned NULL for this -- in 2.0.0 this returns 1 SELECT ST_NumGeometries(ST_GeomFromText('LINESTRING(77.29 29.07,77.42 29.26,77.27 29.31,77.29 29.07)')); --result 1 --Geometry Collection Example - multis count as one geom in a collection SELECT ST_NumGeometries(ST_GeomFromEWKT('GEOMETRYCOLLECTION(MULTIPOINT((-2 3),(-2 2)), LINESTRING(5 5 ,10 10), POLYGON((-7 4.2,-7.1 5,-7.1 4.3,-7 4.2)))')); --result 3