ST_Union 接受两个几何图形对象,并返回是源对象的并集的几何图形对象。
语法
db2gse.ST_Union(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)
返回类型
db2gse.ST_Geometry
示例
以下 CREATE TABLE 语句创建 SENSITIVE_AREAS 表, 该表包含描述受威胁的公共设施的几列。 SENSITIVE_AREAS 表还包含 ZONE 列,它存储公共设施的多边形几何图形。
CREATE TABLE SENSITIVE_AREAS (id integer, name varchar(128), size float, type varchar(10), zone db2gse.ST_Polygon);
以下 CREATE TABLE 语句创建 HAZARDOUS_SITES 表, 该表将地点的标识存储在 SITE_ID 和 NAME 列中。 每个地点的实际地理位置存储在 LOCATION 点列中。
CREATE TABLE HAZARDOUS_SITES (site_id integer, name varchar(128), location db2gse.ST_Point);
以下 SELECT 语句使用 ST_Buffer 函数生成环绕有害废物地点位置的五英里缓冲区。 ST_Union 函数从缓冲的有害废物地点多边形和敏感区域的并集生成多边形。 ST_Area 函数返回多边形区域的并集。
SELECT sa.name, hs.name, db2gse.ST_Area(db2gse.ST_Union(db2gse.ST_Buffer(hs.location, (5 * 5280)),sa.zone)) FROM HAZARDOUS_SITES hs, SENSITIVE_AREAS sa;