mysql

在MySQL中如何将文本转换为几何对象

小樊
87
2024-09-12 02:12:43
栏目: 云计算

在 MySQL 中,可以使用内置的地理空间函数将文本转换为几何对象

首先,确保您的 MySQL 版本支持地理空间数据类型和函数。这些功能从 MySQL 5.7.5 开始引入。

接下来,创建一个包含地理空间列的表。例如,创建一个名为 geometries 的表,其中包含一个名为 shapeGEOMETRY 类型列:

CREATE TABLE geometries (
    id INT AUTO_INCREMENT PRIMARY KEY,
    shape GEOMETRY NOT NULL
);

现在,您可以使用 ST_GeomFromText() 函数将 WKT(Well-Known Text)格式的文本转换为几何对象并将其插入到表中。例如,插入一个点、线和多边形:

INSERT INTO geometries (shape) VALUES (ST_GeomFromText('POINT(1 2)'));
INSERT INTO geometries (shape) VALUES (ST_GeomFromText('LINESTRING(0 0, 1 1, 2 2)'));
INSERT INTO geometries (shape) VALUES (ST_GeomFromText('POLYGON((0 0, 10 0, 10 10, 0 10, 0 0))'));

要查询表中的几何对象,可以使用 ST_AsText() 函数将它们转换回 WKT 格式:

SELECT ST_AsText(shape) FROM geometries;

这将返回以下结果:

+-----------------------------+
| ST_AsText(shape)            |
+-----------------------------+
| POINT(1 2)                  |
| LINESTRING(0 0,1 1,2 2)     |
| POLYGON((0 0,10 0,10 10,0 10,0 0)) |
+-----------------------------+

请注意,这里给出的示例仅适用于 MySQL 5.7.5 及更高版本。在使用地理空间数据类型和函数时,请务必查阅您所使用的 MySQL 版本的官方文档。

0
看了该问题的人还看了