ST_ASKML
📄字数 586
👁️阅读量 加载中...
功能描述
将几何图形作为 Keyhole 标记语言 (KML) 元素返回。
语法格式
sql
CLOB ST_ASKML(GEOMETRY geom, INTEGER maxdecimaldigits=15, VARCHAR nprefix=NULL);
CLOB ST_ASKML(GEOGRAPHY geog, INTEGER maxdecimaldigits=15, VARCHAR nprefix=NULL);参数说明
- geom:目标 GEOMETRY 对象。
- geog:目标 GEOGRAPHY 对象。
- maxdecimaldigits:精度,用于减少输出中使用的最大小数位数。可选,默认 15。
- nprefix:自定义命名空间前缀。默认为 NULL。
函数返回类型
CLOB 类型
使用说明
- GML 2指2.1.2版本,GML 3指3.1.1版本。
- 使用 maxdecimaldigits 参数可能会导致输出几何图形无效。 为了避免这种情况,首先使用 ST_REDUCEPRECISION 和合适的网格大小。
- 该函数支持 3d 并且不会丢失 z-index。
注意
ST_ASKML 输出不适用于无 SRID 的几何图形。
示例
sql
SQL> SELECT ST_ASKML(ST_GEOMFROMTEXT('POLYGON((0 0,0 1,1 1,1 0,0 0))',4326));
+-------------------------------------------------------------------------------------------------------------------------------+
| EXPR1 |
+-------------------------------------------------------------------------------------------------------------------------------+
| <Polygon><outerBoundaryIs><LinearRing><coordinates>0,0 0,1 1,1 1,0 0,0</coordinates></LinearRing></outerBoundaryIs></Polygon> |
+-------------------------------------------------------------------------------------------------------------------------------+
(1 row)
-- 3D linestring
SQL> SELECT ST_AsKML('SRID=4326;LINESTRING(1 2 3, 4 5 6)');
+-----------------------------------------------------------------+
| EXPR1 |
+-----------------------------------------------------------------+
| <LineString><coordinates>1,2,3 4,5,6</coordinates></LineString> |
+-----------------------------------------------------------------+
(1 row)