ST_CoordDim
定义
ST_CoordDim 返回 ST_Geometry 列的坐标值的维度。
语法
sde.st_coorddim (g1 sde.st_geometry)
返回类型
整型
2 = x,y 坐标
3 = x,y,z 或 x,y,m 坐标
4 = x,y,z,m 坐标
示例
创建包含 geotype 和 g1 两列的 coorddim_test 表。geotype 列存储 g1 ST_Geometry 列中所存储的几何子类的名称。
CREATE TABLE coorddim_test (geotype varchar(20), g1 sde.st_geometry);
Oracle
INSERT INTO COORDDIM_TEST VALUES (
'Point',
sde.st_geometry ('point (60.567222 -140.404)', 0)
);
INSERT INTO COORDDIM_TEST VALUES (
'Point Z',
sde.st_geometry ('point Z (60.567222 -140.404 5959)', 0)
);
INSERT INTO COORDDIM_TEST VALUES (
'Point M',
sde.st_geometry ('point M (60.567222 -140.404 5250)', 0)
);
INSERT INTO COORDDIM_TEST VALUES (
'Point ZM',
sde.st_geometry ('point ZM (60.567222 -140.404 5959 5250)', 0)
);
PostgreSQL
INSERT INTO coorddim_test VALUES (
'Point',
st_point ('point (60.567222 -140.404)', 0)
);
INSERT INTO coorddim_test VALUES (
'Point Z',
st_point ('point z (60.567222 -140.404 5959)', 0)
);
INSERT INTO coorddim_test VALUES (
'Point M',
st_point ('point m (60.567222 -140.404 5250)', 0)
);
INSERT INTO coorddim_test VALUES (
'Point ZM',
st_point ('point zm (60.567222 -140.404 5959 5250)', 0)
);
SELECT 语句列出 geotype 列中所存储的子类名称以及相应几何的坐标维度。创建的所有要素都仅包含 x,y 坐标,所以 ST_CoordDim 返回 2。
Oracle
SELECT geotype, sde.st_coorddim (g1) coordinate_dimension
FROM COORDDIM_TEST;
GEOTYPE coordinate_dimension
Point 2
Point Z 3
Point M 3
Point ZM 4
PostgreSQL
SELECT geotype, st_coorddim (g1)
AS coordinate_dimension
FROM coorddim_test;
geotype coordinate_dimension
Point 2
Point Z 3
Point M 3
Point ZM 4
9/15/2013