MySQL提供了一组有用的非标准函数来创建几何值。这些函数是MySQL对OpenGIS规范的扩展。
这些函数从WKB值或几何对象作为参数生成几何对象。如果任何参数不是正确的WKB或几何对象的表示形式,返回值为NULL
。
例如,您可以将Point()
的几何返回值直接插入到POINT
列中:
INSERT INTO t1 (pt_col) VALUES(Point(1,2));
-
从几何参数构建一个
GeomCollection
值。GeomCollection()
返回所有参数中的正确几何,即使存在不支持的几何。GeomCollection()
无参数是创建空几何的方式。此外,接受WKT几何集合参数的函数,如ST_GeomFromText()
,理解OpenGIS'GEOMETRYCOLLECTION EMPTY'
标准语法和MySQL'GEOMETRYCOLLECTION()'
非标准语法。GeomCollection()
和GeometryCollection()
是同义的,GeomCollection()
是首选函数。 -
GeometryCollection(
g
[,g
] ...)从几何参数构建一个
GeomCollection
值。GeometryCollection()
返回所有参数中的正确几何,即使存在不支持的几何。GeometryCollection()
无参数是创建空几何的方式。此外,接受WKT几何集合参数的函数,如ST_GeomFromText()
,理解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
。