ST_GEOMETRYTYPE
📄字数 796
👁️阅读量 加载中...
功能描述
返回指定几何图形的 SQL-MM 类型。
语法格式
sql
VARCHAR ST_GEOMETRYTYPE(GEOMETRY g1);参数说明
- g1:目标 GEOMETRY 对象;
函数返回类型
VARCHAR 类型
使用说明
- 以字符串形式返回几何类型。如
ST_LineString、ST_Polygon、ST_MultiPolygon等。 - 此函数与 GeometryType 不同,此函数前面有
ST,并不指示它是否具有 M 值。 - 该方法实现了SQL/MM规范。 SQL-MM 3: 5.1.4
- 该函数支持 3d 并且不会丢失 z-index。
- 该函数支持多面体曲面。
示例
sql
SQL> SELECT ST_GEOMETRYTYPE(ST_GEOMFROMTEXT('LINESTRING(77.29 29.07,77.42 29.26,77.27 29.31,77.29 29.07)'));
+---------------+
| EXPR1 |
+---------------+
| ST_LineString |
+---------------+
SQL> SELECT ST_GEOMETRYTYPE(ST_GEOMFROMEWKT('POLYHEDRALSURFACE( ((0 0 0, 0 0 1, 0 1 1, 0 1 0, 0 0 0)),
((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)), ((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)),
((1 1 0, 1 1 1, 1 0 1, 1 0 0, 1 1 0)),
((0 1 0, 0 1 1, 1 1 1, 1 1 0, 0 1 0)), ((0 0 1, 1 0 1, 1 1 1, 0 1 1, 0 0 1)) )'));
+----------------------+
| EXPR1 |
+----------------------+
| ST_PolyhedralSurface |
+----------------------+
SQL> SELECT ST_GEOMETRYTYPE(ST_GeomFromEWKT('POLYHEDRALSURFACE( ((0 0 0, 0 0 1, 0 1 1, 0 1 0, 0 0 0)),
((0 0 0, 0 1 0, 1 1 0, 1 0 0, 0 0 0)), ((0 0 0, 1 0 0, 1 0 1, 0 0 1, 0 0 0)),
((1 1 0, 1 1 1, 1 0 1, 1 0 0, 1 1 0)),
((0 1 0, 0 1 1, 1 1 1, 1 1 0, 0 1 0)), ((0 0 1, 1 0 1, 1 1 1, 0 1 1, 0 0 1)) )'));
+----------------------+
| EXPR1 |
+----------------------+
| ST_PolyhedralSurface |
+----------------------+
SQL> SELECT ST_GEOMETRYTYPE(geom) as result
FROM
(SELECT
ST_GeomFromEWKT('TIN (((
0 0 0,
0 0 1,
0 1 0,
0 0 0
)), ((
0 0 0,
0 1 0,
1 1 0,
0 0 0
))
)') AS geom
) AS g;
+--------+
| RESULT |
+--------+
| ST_Tin |
+--------+