#ST_ASTEXT
ST_ASTEXT函数根据输入的geometry和maxdecimaldigits,返回该geometry的WKT(Well-Known Text)表示。
geometry
通用表达式,其值必须为有效的ST_GEOMETRY类型的数据。
maxdecimaldigits
maxdecimaldigits表示输出结果中小数的位数,如果不够则补零,其值为INT类型,遵循如下规则:
- 支持能够隐式转换成INT的类型,如果输入的是小数则进行四舍五入转换。
- 该参数可以省略,省略时默认值是15。
- 如果输入的是负数,则会按照0输出。
- 如果输入的值超过了16,则会给按照16进行处理,但第16位小数不一定有效。
- 结果不会以科学计数法的形式输出。
当输入的参数存在NULL时,函数返回NULL。
示例
--ST_GEOMFROMTEXT函数会根据给定的WKT和SRID返回一个ST_GEOMETRY数据
--小数位数
SELECT ST_AsText(ST_GeomFromText('POINT(1 2)', 4326), 0) res FROM DUAL;
RES
----------------------------------------------------------------
POINT (1 2)
SELECT ST_AsText(ST_GeomFromText('POINT(1 2)', 4326), 1) res FROM DUAL;
RES
----------------------------------------------------------------
POINT (1.0 2.0)
SELECT ST_AsText(ST_GeomFromText('POINT(1 2)', 4326), 100) res FROM DUAL;
RES
----------------------------------------------------------------
POINT (1.0000000000000000 2.0000000000000000)
SELECT ST_AsText(ST_GeomFromText('POINT(1 2)', 4326), -10) res FROM DUAL;
RES
----------------------------------------------------------------
POINT (1 2)
--维度混合
SELECT ST_AsText(ST_GeomFromText('MULTIPOINT(1 2 3, 1 1)', 4326), 0) res FROM DUAL;
RES
----------------------------------------------------------------
MULTIPOINT Z (1 2 3, 1 1 0)
--支持inf和nan的输入
SELECT ST_AsText(St_GeomFromText('MULTIPOINT(inf inf,nan nan)')) res FROM DUAL;
RES
----------------------------------------------------------------
MULTIPOINT (inf inf, EMPTY)