定义
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