从WKB值创建几何值的函数
这些函数将BLOB
包含众所周知的二进制(WKB)表示形式以及可选的空间参考系统标识符(SRID)的参数作为参数。它们返回相应的几何。有关WKB格式的说明,请参见“众所周知的二进制(WKB)格式”。
本节中的函数检测笛卡尔或地理空间参考系统(SRS)中的自变量,并返回适合于SRS的结果。
ST_GeomFromWKB()
接受任何几何类型的WKB值作为其第一个参数。其他功能提供了特定于类型的构造功能,用于构造每种几何类型的几何值。
在MySQL 8.0之前,这些函数还接受“创建几何值的MySQL特定函数”中的函数返回的几何对象。几何参数不再被允许并产生错误。要将调用从使用几何参数迁移到使用WKB参数,请遵循以下准则:
- 重写结构,如
ST_GeomFromWKB(Point(0, 0))
作为Point(0, 0)
。 - 重写构造如
ST_GeomFromWKB(Point(0, 0), 4326)
如ST_SRID(Point(0, 0), 4326)
或ST_GeomFromWKB(ST_AsWKB(Point(0, 0)), 4326)
。
除非另有说明,否则本节中的函数将按以下方式处理其参数:
- 如果WKB或SRID参数为
NULL
,则返回值为NULL
。 默认情况下,地理坐标(纬度,经度)将按照由几何参数的空间参考系统指定的顺序进行解释。
options
可以提供一个可选参数以覆盖默认轴顺序。options
由逗号分隔的列表组成。唯一允许值是,具有的允许值,和(缺省值)。key=value
key
axis-order
lat-long
long-lat
srid-defined
如果
options
参数为NULL
,则返回值为NULL
。如果options
参数无效,则会发生错误以指示原因。- 如果SRID参数引用未定义的空间参照系(SRS),
ER_SRS_NOT_FOUND
则会发生错误。 对于地理SRS几何参数,如果任何参数的经度或纬度超出范围,则会发生错误:
- 如果经度值不在(-180,180]范围内,
ER_LONGITUDE_OUT_OF_RANGE
则会发生错误。 - 如果纬度值不在[-90,90]范围内,
ER_LATITUDE_OUT_OF_RANGE
则会发生错误。
显示的范围以度为单位。如果SRS使用其他单位,则范围使用其单位中的相应值。精确的范围限制由于浮点运算而略有不同。
- 如果经度值不在(-180,180]范围内,
这些函数可用于从WKB值创建几何:
ST_GeomCollFromWKB(wkb[,srid[,options]])
,ST_GeometryCollectionFromWKB(wkb[,srid[,options]])
GeometryCollection
使用其WKB表示形式和SRID 构造一个值。这些函数按照本节简介中的描述处理其参数。
ST_GeomFromWKB(wkb[,srid[,options]])
,ST_GeometryFromWKB(wkb[,srid[,options]])
使用其WKB表示形式和SRID构造任何类型的几何值。
这些函数按照本节简介中的描述处理其参数。
ST_LineFromWKB(wkb[,srid[,options]])
,ST_LineStringFromWKB(wkb[,srid[,options]])
LineString
使用其WKB表示形式和SRID 构造一个值。这些函数按照本节简介中的描述处理其参数。
ST_MLineFromWKB(wkb[,srid[,options]])
,ST_MultiLineStringFromWKB(wkb[,srid[,options]])
MultiLineString
使用其WKB表示形式和SRID 构造一个值。这些函数按照本节简介中的描述处理其参数。
ST_MPointFromWKB(wkb[,srid[,options]])
,ST_MultiPointFromWKB(wkb[,srid[,options]])
MultiPoint
使用其WKB表示形式和SRID 构造一个值。这些函数按照本节简介中的描述处理其参数。
ST_MPolyFromWKB(wkb[,srid[,options]])
,ST_MultiPolygonFromWKB(wkb[,srid[,options]])
MultiPolygon
使用其WKB表示形式和SRID 构造一个值。这些函数按照本节简介中的描述处理其参数。
ST_PointFromWKB(wkb[,srid[,options]])
Point
使用其WKB表示形式和SRID 构造一个值。ST_PointFromWKB()
按照本节简介中所述处理其参数。ST_PolyFromWKB(wkb[,srid[,options]])
,ST_PolygonFromWKB(wkb[,srid[,options]])
Polygon
使用其WKB表示形式和SRID 构造一个值。这些函数按照本节简介中的描述处理其参数。