# 12.17.7.5 GeometryCollection 属性函数

这些函数返回的属性几何集合价值观。

除非另有说明,本节中的函数按如下方式处理其几何参数:

  • 如果有任何论据空值或任何几何参数是空几何,返回值为空值.

  • 如果任何几何参数不是语法上格式良好的几何,则ER_GIS_INVALID_DATA (opens new window)发生错误。

  • 如果任何几何参数是未定义的空间参考系统 (SRS) 中的语法结构良好的几何,则ER_SRS_NOT_FOUND (opens new window)发生错误。

  • 否则,返回值为非空值.

    这些函数可用于获取几何集合属性:

  • ST_GeometryN(*gc*, *ñ*)

    返回*ñ-th 几何几何集合价值gc*.几何图形从 1 开始编号。

    ST_GeometryN()如本节介绍中所述处理其参数。

    mysql> SET @gc = 'GeometryCollection(Point(1 1),LineString(2 2, 3 3))';
    mysql> SELECT ST_AsText(ST_GeometryN(ST_GeomFromText(@gc),1));
    +-------------------------------------------------+
    | ST_AsText(ST_GeometryN(ST_GeomFromText(@gc),1)) |
    +-------------------------------------------------+
    | POINT(1 1)                                      |
    +-------------------------------------------------+
    
  • ST_NumGeometries(*gc*)

    返回几何图形的数量几何集合价值*gc*.

    ST_NumGeometries()如本节介绍中所述处理其参数。

    mysql> SET @gc = 'GeometryCollection(Point(1 1),LineString(2 2, 3 3))';
    mysql> SELECT ST_NumGeometries(ST_GeomFromText(@gc));
    +----------------------------------------+
    | ST_NumGeometries(ST_GeomFromText(@gc)) |
    +----------------------------------------+
    |                                      2 |
    +----------------------------------------+