#### 12.17.7.5 GeometryCollection 属性函数

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

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

-   如果有任何论据`空值`或任何几何参数是空几何，返回值为`空值`.

-   如果任何几何参数不是语法上格式良好的几何，则[`ER_GIS_INVALID_DATA`](https://dev.mysql.com/doc/mysql-errors/8.0/en/server-error-reference.html#error_er_gis_invalid_data)发生错误。

-   如果任何几何参数是未定义的空间参考系统 (SRS) 中的语法结构良好的几何，则[`ER_SRS_NOT_FOUND`](https://dev.mysql.com/doc/mysql-errors/8.0/en/server-error-reference.html#error_er_srs_not_found)发生错误。

-   否则，返回值为非`空值`.

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

-   [](<>)

    [`ST_GeometryN(*`gc`*, *`ñ`*)`](gis-geometrycollection-property-functions.html#function_st-geometryn)

    [](<>)

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

    [`ST_GeometryN()`](gis-geometrycollection-property-functions.html#function_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`*)`](gis-geometrycollection-property-functions.html#function_st-numgeometries)

    [](<>)

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

    [`ST_NumGeometries()`](gis-geometrycollection-property-functions.html#function_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 |
    +----------------------------------------+
    ```
