ST_Overlaps 使用兩個幾何物件並傳回 1 (TRUE) (若這兩個物件的交集產生一個相同維度但不等於來源物件的幾何物件);否則會傳回 0 (FALSE)。
語法
db2gse.ST_Overlaps(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)
回覆類型
Integer
範例
縣行政官需要 5 英哩半徑範圍重疊敏感區域的危險廢棄物場所列示。
下列 CREATE TABLE 陳述式建立 SENSITIVE_AREAS 表格。 除了儲存機構的多邊形幾何的 ZONE 直欄以外,SENSITIVE_AREAS 表格還包含數個直欄,說明受威脅的機構。
CREATE TABLE SENSITIVE_AREAS (id integer, name varchar(128), size float, type varchar(10), zone db2gse.ST_Polygon);
HAZARDOUS_SITES 表格在 SITE_ID 和 NAME 名稱儲存這些場所的識別,這些場所的實際地理位置儲存在 LOCATION 點直欄。
CREATE TABLE HAZARDOUS_SITES (site_id integer, name varchar(128), location db2gse.ST_Point);
在下列 SELECT 陳述式中,ST_Overlaps 函數合併 SENSITIVE_AREAS 與 HAZARDOUS_SITES 表格。 若 SENSITIVE_AREAS 表格中列的區域多邊形重疊 HAZARDOUS_SITES 位置點的緩衝的 5 英哩半徑範圍, 對所有這些列,它傳回 1 (TRUE)。
SELECT hs.name FROM HAZARDOUS_SITES hs, SENSITIVE_AREAS sa WHERE db2gse.ST_Overlaps (buffer(hs.location,(5 * 5280)),sa.zone) = 1;
在圖 37中,醫院和學校重疊縣的兩個危險廢棄物場所的 5 英哩半徑範圍,療養院沒有重疊。
圖 37. 使用 ST_Overlaps 判斷至少有一部份是在危險廢棄物區域內的建築物。
![]() |