ST_MinZ

定义

ST_MinZ 以几何对象为输入参数,返回其最小 z 坐标。

语法

Oracle 和 PostgreSQL

sde.st_minz (geometry1 sde.st_geometry)

SQLite

st_minz (geometry1 geometryblob)

返回类型

Oracle 和 PostgreSQL

数值

如果 z 值不存在,则返回 NULL。

SQLite

双精度型

如果 z 值不存在,则返回 NULL。

示例

创建表 minz_test,并向其中插入两个面。然后运行 ST_MinZ,以确定每个面的最小 z 坐标值。

Oracle

CREATE TABLE minz_test (
 id integer,
 geometry sde.st_geometry
);

INSERT INTO MINZ_TEST VALUES (
 1901,
 sde.st_polygon ('polygon zm((110 120 20 3, 110 140 22 3, 120 130 26 4, 110 120 20 3))', 4326)
);

INSERT INTO MINZ_TEST VALUES (
 1902,
 sde.st_polygon ('polygon zm((0 0 40 7, 0 4 35 9, 5 4 32 12, 5 0 31 5, 0 0 40 7))', 4326)
);

SELECT id, sde.st_minz (geometry) MinZ
 FROM MINZ_TEST;

        ID       MINZ

      1901         20
      1902         31

PostgreSQL

CREATE TABLE minz_test (
 id integer,
 geometry st_geometry
);

INSERT INTO minz_test VALUES (
 1901,
 st_polygon ('polygon zm((110 120 20 3, 110 140 22 3, 120 130 26 4, 110 120 20 3))', 4326)
);

INSERT INTO minz_test VALUES (
 1902,
 st_polygon ('polygon zm((0 0 40 7, 0 4 35 9, 5 4 32 12, 5 0 31 5, 0 0 40 7))', 4326)
);

SELECT id, st_minz (geometry) 
 AS MinZ
 FROM minz_test;

        id       minz

      1901         20
      1902         31

SQLite

CREATE TABLE minz_test (
 id integer
);

SELECT AddGeometryColumn (
 NULL,
 'minz_test',
 'geometry',
 4326,
 'polygonzm',
 'xyzm',
 'null'
);

INSERT INTO minz_test VALUES (
 1901,
 st_polygon ('polygon zm((110 120 20 3, 110 140 22 3, 120 130 26 4, 110 120 20 3))', 4326)
);

INSERT INTO minz_test VALUES (
 1902,
 st_polygon ('polygon zm((0 0 40 7, 0 4 35 9, 5 4 32 12, 5 0 31 5, 0 0 40 7))', 4326)
);

SELECT id, st_minz (geometry) 
 AS "MinZ"
 FROM minz_test;

id        MinZ

1901      20.0
1902      31.0

相关主题

5/25/2014