ST_Intersects 使用兩個幾何並傳回 1 (TRUE) (若兩個幾何的交集沒有產生空集)。 否則會傳回 0 (FALSE)。
語法
db2gse.ST_Intersects(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)
回覆類型
Integer
範例
消防隊隊長需要一個危險廢棄物場所的 5 英哩半徑範圍內的敏感區域列示。
敏感區域儲存在使用下列 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);
此查詢傳回敏感區域和敏感區域的危險場所名稱列示,與危險場所的 5 英哩緩衝區相交。
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;