Skip to content

适用虚谷数据库版本

v12.9



适用虚谷数据库版本

v12.9


ST_ASTEXT

📄字数 939
👁️阅读量 加载中...

功能描述

返回几何/地理的 OGC 已知文本 (WKT) 表示形式。

语法格式

sql
CLOB ST_ASTEXT(GEOMETRY g1, INTEGER maxdecimaldigits=15);
CLOB ST_ASTEXT(GEOGRAPHY g1, INTEGER maxdecimaldigits=15);
CLOB ST_ASTEXT(CLOB g1);

参数说明

  • g1:目标 GEOMETRY/GEOGRAPHY 对象。
  • maxdecimaldigits:精度。可用于限制输出坐标中小数点后的位数。可选,默认为 15。

函数返回类型

CLOB 类型

使用说明

  1. 要执行 WKT 表示形式到几何图形的逆转换,请使用 ST_GEOMFROMTEXT。
  2. 标准 OGC WKT 表示不包括 SRID。 要将 SRID 作为输出表示的一部分,请使用函数 ST_ASEWKT。
  3. 此方法实现了 SQL 1.1 的 OGC 简单功能规范。 s2.1.1.1
  4. 该方法实现了SQL/MM规范。 SQL-MM 3: 5.1.25
  5. 此方法支持圆形字符串和曲线。

注意

  1. WKT 格式不保持精度,因此为了防止浮动截断,请使用 ST_ASBINARY 或 ST_ASEWKB 格式进行传输。
  2. 使用 maxdecimaldigits 参数可能会导致输出几何图形无效。 为了避免这种情况,首先使用 ST_REDUCEPRECISION 和合适的网格大小。

示例

sql
SQL> SELECT ST_ASTEXT('01030000000100000005000000000000000000000000000000000000000000000000000000000000000000F03F000000000000F03F000000000000F03F000000000000F03F000000000000000000000000000000000000000000000000');

+--------------------------------+
|             EXPR1              |
+--------------------------------+
| POLYGON((0 0,0 1,1 1,1 0,0 0)) |
+--------------------------------+

(1 row)

默认情况下为全精度输出:

sql

SQL> SELECT ST_ASTEXT('POINT(111.1111111 1.1111111)');

+------------------------------+
|            EXPR1             |
+------------------------------+
| POINT(111.1111111 1.1111111) |
+------------------------------+

(1 row)

maxdecimaldigits 参数用于限制输出精度。

sql
SQL> SELECT ST_ASTEXT('POINT(111.1111111 1.1111111)'::GEOMETRY, 2);

+--------------------+
|       EXPR1        |
+--------------------+
| POINT(111.11 1.11) |
+--------------------+

(1 row)