MySQL 提供了一组有用的非标准函数,用于创建几何值。本节中描述的函数是 MySQL 对 OpenGIS 规范的扩展。
这些函数从 WKB 值或几何对象作为参数生成几何对象。如果任何参数不是适当的 WKB 或正确对象类型的几何表示,则返回值为 NULL
。
例如,您可以将从 Point()
返回的几何值直接插入 POINT
列
INSERT INTO t1 (pt_col) VALUES(Point(1,2));
从几何参数构造
GeomCollection
值。GeomCollection()
返回参数中包含的所有正确几何体,即使存在不受支持的几何体。GeomCollection()
允许没有参数,作为创建空几何体的方法。此外,例如ST_GeomFromText()
之类的接受 WKT 几何体集合参数的函数,既理解 OpenGIS'GEOMETRYCOLLECTION EMPTY'
标准语法,也理解 MySQL'GEOMETRYCOLLECTION()'
非标准语法。GeomCollection()
和GeometryCollection()
是同义词,其中GeomCollection()
是首选函数。GeometryCollection(
g
[,g
] ...)从几何参数构造
GeomCollection
值。GeometryCollection()
返回参数中包含的所有正确几何体,即使存在不受支持的几何体。GeometryCollection()
允许没有参数,作为创建空几何体的方法。此外,例如ST_GeomFromText()
之类的接受 WKT 几何体集合参数的函数,既理解 OpenGIS'GEOMETRYCOLLECTION EMPTY'
标准语法,也理解 MySQL'GEOMETRYCOLLECTION()'
非标准语法。GeomCollection()
和GeometryCollection()
是同义词,其中GeomCollection()
是首选函数。从多个
Point
或 WKBPoint
参数构造LineString
值。如果参数少于两个,则返回值为NULL
。MultiLineString(
ls
[,ls
] ...)使用
LineString
或 WKBLineString
参数构造MultiLineString
值。使用
Point
或 WKBPoint
参数构造MultiPoint
值。MultiPolygon(
poly
[,poly
] ...)从一组
Polygon
或 WKBPolygon
参数构造MultiPolygon
值。使用其坐标构造
Point
。从多个
LineString
或 WKBLineString
参数构造Polygon
值。如果任何参数不代表LinearRing
(即,不是封闭且简单的LineString
),则返回值为NULL
。