MariaDB ST_GeomFromText() 函数的基础用法与实例

MariaDB ST_GeomFromText() 函数用来将一个 Well-Known Text (WKT) 表示形式的字符串转换为相应的几何值。

发布于

MariaDB ST_GeomFromText() 函数用来将一个 Well-Known Text (WKT) 表示形式的字符串转换为相应的几何值。这个函数常用于从文本数据源导入几何数据或从文本形式构造几何值。

语法

MairaDB ST_GeomFromText() 函数的语法如下:

ST_GeomFromText(wkt[, srid])
  • wkt:一个有效的 Well-Known Text (WKT)格式的字符串,描述了一个几何值。
  • srid:(可选)一个空间参考系统标识符,指定几何值的坐标系统。如果未指定,则使用默认的空间参考系统。

该函数返回一个几何值,其类型和坐标取决于输入的 WKT 字符串。如果输入的 WKT 字符串无效,则返回NULL

实例

从 WKT 字符串创建点

这个实例演示了如何从 WKT 字符串创建一个点几何值。

SELECT ST_AsText(ST_GeomFromText('POINT(1 2)'));

以下是该语句的输出:

+------------------------------------------+
| ST_AsText(ST_GeomFromText('POINT(1 2)')) |
+------------------------------------------+
| POINT(1 2)                               |
+------------------------------------------+

这个例子从 WKT 字符串'POINT(1 2)'创建了一个POINT几何值。

从 WKT 字符串创建线串

这个实例演示了如何从 WKT 字符串创建一个线串几何值。

SELECT ST_AsText(ST_GeomFromText('LINESTRING(0 0,1 1,2 2)'));

以下是该语句的输出:

+-------------------------------------------------------+
| ST_AsText(ST_GeomFromText('LINESTRING(0 0,1 1,2 2)')) |
+-------------------------------------------------------+
| LINESTRING(0 0,1 1,2 2)                               |
+-------------------------------------------------------+

这个例子从 WKT 字符串 'LINESTRING(0 0,1 1,2 2)' 创建了一个 LINESTRING 几何值。

从 WKT 字符串创建多点

这个实例演示了如何从 WKT 字符串创建一个多点几何值。

SELECT ST_AsText(ST_GeomFromText('MULTIPOINT(0 0,1 1,2 2)'));

以下是该语句的输出:

+-------------------------------------------------------+
| ST_AsText(ST_GeomFromText('MULTIPOINT(0 0,1 1,2 2)')) |
+-------------------------------------------------------+
| MULTIPOINT(0 0,1 1,2 2)                               |
+-------------------------------------------------------+

这个例子从 WKT 字符串'MULTIPOINT(0 0,1 1,2 2)'创建了一个MULTIPOINT几何值。

从 WKT 字符串创建多线串

这个实例演示了如何从 WKT 字符串创建一个多线串几何值。

SELECT ST_AsText(ST_GeomFromText('MULTILINESTRING((0 0,1 1),(2 2,3 3))'));

以下是该语句的输出:

+--------------------------------------------------------------------+
| ST_AsText(ST_GeomFromText('MULTILINESTRING((0 0,1 1),(2 2,3 3))')) |
+--------------------------------------------------------------------+
| MULTILINESTRING((0 0,1 1),(2 2,3 3))                               |
+--------------------------------------------------------------------+

这个例子从 WKT 字符串'MULTILINESTRING((0 0,1 1),(2 2,3 3))'创建了一个MULTILINESTRING几何值。

指定空间参考系统

这个实例演示了如何在创建几何值时指定空间参考系统。

SELECT ST_AsText(ST_GeomFromText('POINT(1 2)', 4326));

以下是该语句的输出:

+------------------------------------------------+
| ST_AsText(ST_GeomFromText('POINT(1 2)', 4326)) |
+------------------------------------------------+
| POINT(1 2)                                     |
+------------------------------------------------+

这个例子从 WKT 字符串'POINT(1 2)'创建了一个POINT几何值,并指定了空间参考系统标识符为4326(WGS 84 坐标系统)。

相关函数

以下是几个与 MairaDB ST_GeomFromText() 相关的几个函数:

  • MariaDB ST_GeomFromWKB() 函数用来将一个 Well-Known Binary (WKB)表示形式的二进制值转换为相应的几何值。
  • MariaDB ST_AsText() 函数用来将一个几何值转换为 Well-Known Text (WKT)表示形式的字符串。
  • MariaDB ST_AsWKB() 函数用来将一个几何值转换为 Well-Known Binary (WKB)表示形式的二进制值。

结论

本文介绍了 MariaDB ST_GeomFromText() 函数的用法和实例。通过这些实例,您应该能够掌握如何使用该函数从 WKT 字符串创建各种类型的几何值,以及如何在创建时指定空间参考系统。同时还列举了几个与该函数相关的其他函数,以供参考。