12.16.6 几何格式转换功能

MySQL 支持本节中列出的用于将几何值从内部几何格式转换为 WKT 或 WKB 格式的功能。

还具有将字符串从 WKT 或 WKB 格式转换为内部几何格式的功能。参见第 12.16.3 节“从 WKT 值创建几何值的函数”第 12.16.4 节“从 WKB 值创建几何值的函数”

AsBinary(g), AsWKB(g)

ST_AsBinary()ST_AsWKB()AsBinary()AsWKB()是同义词。有关更多信息,请参见ST_AsBinary()的描述。

AsBinary()AsWKB()已被弃用,并将在将来的 MySQL 版本中删除。请改用ST_AsBinary()ST_AsWKB()

AsText(g), AsWKT(g)

ST_AsText()ST_AsWKT()AsText()AsWKT()是同义词。有关更多信息,请参见ST_AsText()的描述。

AsText()AsWKT()已被弃用,并将在将来的 MySQL 版本中删除。请改用ST_AsText()ST_AsWKT()

ST_AsBinary(g), ST_AsWKB(g)

将内部几何格式的值转换为其 WKBtable 示形式,并返回二进制结果。

如果参数为NULL,则返回值为NULL。如果自变量不是语法上格式正确的几何,则会发生ER_GIS_INVALID_DATA错误。

SELECT ST_AsBinary(g) FROM geom;

ST_AsBinary()ST_AsWKB()AsBinary()AsWKB()是同义词。

ST_AsText(g), ST_AsWKT(g)

将内部几何格式的值转换为其 WKTtable 示形式,并返回字符串结果。

如果参数为NULL,则返回值为NULL。如果自变量不是语法上格式正确的几何,则会发生ER_GIS_INVALID_DATA错误。

mysql> SET @g = 'LineString(1 1,2 2,3 3)';
mysql> SELECT ST_AsText(ST_GeomFromText(@g));
+--------------------------------+
| ST_AsText(ST_GeomFromText(@g)) |
+--------------------------------+
| LINESTRING(1 1,2 2,3 3)        |
+--------------------------------+

ST_AsText()ST_AsWKT()AsText()AsWKT()是同义词。

MultiPoint值的输出包括每个点附近的括号。例如:

mysql> SET @mp = 'MULTIPOINT(1 1, 2 2, 3 3)';
mysql> SELECT ST_AsText(ST_GeomFromText(@mp));
+---------------------------------+
| ST_AsText(ST_GeomFromText(@mp)) |
+---------------------------------+
| MULTIPOINT((1 1),(2 2),(3 3))   |
+---------------------------------+