阅读量:113
GeomFromText() 是 MySQL 中的一个函数,用于将 WKT (Well-Known Text) 格式的字符串表示形式转换为几何对象
以下是如何在 MySQL 中使用 GeomFromText() 函数的简单示例:
- 首先,创建一个包含几何类型数据的表。例如,我们可以创建一个名为
geometries的表,其中包含一个名为shape的GEOMETRY类型列:
CREATE TABLE geometries (
id INT AUTO_INCREMENT PRIMARY KEY,
shape GEOMETRY NOT NULL
);
- 然后,您可以使用
GeomFromText()函数将 WKT 格式的字符串插入到shape列中。例如,插入一个点、线和多边形:
INSERT INTO geometries (shape) VALUES (GeomFromText('POINT(1 1)'));
INSERT INTO geometries (shape) VALUES (GeomFromText('LINESTRING(0 0, 1 1, 2 2)'));
INSERT INTO geometries (shape) VALUES (GeomFromText('POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))'));
- 若要查询表中的几何对象,可以使用
AsText()或ST_AsText()函数将几何对象转换回 WKT 格式的字符串。例如,查询上面插入的所有几何对象:
SELECT id, ST_AsText(shape) as wkt FROM geometries;
这将返回类似于以下内容的结果:
+----+-----------------------------+
| id | wkt |
+----+-----------------------------+
| 1 | POINT(1 1) |
| 2 | LINESTRING(0 0, 1 1, 2 2) |
| 3 | POLYGON((0 0, 10 0, 10 10, 0 10, 0 0)) |
+----+-----------------------------+
注意:在 MySQL 8.0 及更高版本中,建议使用 ST_GeomFromText() 函数代替 GeomFromText(),因为它提供了更多的功能和更好的性能。要使用 ST_GeomFromText(),只需将函数名称更改为 ST_GeomFromText(),并确保已启用空间扩展。