ST_AsText

创建空间对象的熟知文本 (WKT) 表示。当需要指定 ASCII 形式的空间对象时可使用此函数。

开放地理空间联盟 (OGC)OGC 简易功能访问第 1 部分 - 通用架构规范定义了 WKT 字符串的格式。

行为类型

不可变

语法

ST_AsText( g )

参数

g
需要获取 WKT 字符串的空间对象,类型为 GEOMETRY 或 GEOGRAPHY

返回

LONG VARCHAR

支持的数据类型

示例

以下示例显示了 ST_AsText 的用法。

检索 WKB 和 WKT 表示:

=> CREATE TABLE locations (id INTEGER, name VARCHAR(100), geom1 GEOMETRY(800),
   geom2 GEOGRAPHY);
CREATE TABLE
=> COPY locations
    (id, geom1x FILLER LONG VARCHAR(800), geom1 AS ST_GeomFromText(geom1x), geom2x FILLER LONG VARCHAR (800),
     geom2 AS ST_GeographyFromText(geom2x))
    FROM stdin;
Enter data to be copied followed by a newline.
End with a backslash and a period on a line by itself.
>> 1|POINT(2 3)|
>> 2|LINESTRING(2 4,1 5)|
>> 3||POLYGON((-70.96 43.27,-70.67 42.95,-66.90 44.74,-67.81 46.08,-67.81 47.20,-69.22 47.43,-71.09 45.25,-70.96 43.27))
>> \\.
=> SELECT id, ST_AsText(geom1),ST_AsText(geom2) FROM locations ORDER BY id ASC;
 id |       ST_AsText       |                 ST_AsText
----+-----------------------+---------------------------------------------
  1 | POINT (2 3)           |
  2 | LINESTRING (2 4, 1 5) |
  3 |                       | POLYGON ((-70.96 43.27, -70.67 42.95, -66.9 44.74, -67.81 46.08, -67.81 47.2, -69.22 47.43, -71.09 45.25, -70.96 43.27))
(3 rows)

使用 Vertica SQL 函数 LENGTH 计算 WKT 的长度:

=> SELECT LENGTH(ST_AsText(St_GeomFromText('POLYGON ((-1 2, 0 3, 1 2,
                                                      0 1, -1 2))')));
 LENGTH
--------
     37
(1 row)

另请参阅