ST_Intersects 接受两个几何图形,若两个几何图形的交集不产生空集,则返回 1 (TRUE)。 否则,它返回 0 (FALSE)。
语法
db2gse.ST_Intersects(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)
返回类型
整数
示例
消防队长需要在有害废物地点的五英里半径内的所有敏感区域的列表。
敏感区域存储在用以下 CREATE TABLE 语句创建的表 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 表中。 定义为点的 LOCATION 列存储每个危险地点的地理中心的位置。
CREATE TABLE HAZARDOUS_SITES (site_id integer, name varchar(128), location db2gse.ST_Point);
该查询对与危险地点的五英里缓冲区相交的敏感区域返回敏感区域和危险地点名称的列表。
SELECT sa.name, hs.name FROM SENSITIVE_AREAS sa, HAZARDOUS_SITES hs WHERE db2gse.ST_Intersects(db2gse.ST_Buffer(hs.location,(5 * 5280)),sa.zone) = 1;