使用與參考手冊

ST_SymmetricDiff

ST_SymmetricDiff 使用兩個幾何物件並傳回一個幾何物件,該物件是來源物件的對稱差集。

語法

db2gse.ST_SymmetricDiff(g1 db2gse.ST_Geometry, g2 db2gse.ST_Geometry)

回覆類型

db2gse.ST_Geometry

範例

縣行政官必須判斷敏感區域與 5 英哩危險場所半徑範圍沒有相交的區域。

下列 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  point); 

ST_Buffer 函數產生圍繞危險廢棄物場所的 5 英哩緩衝區。 ST_SymmetricDiff 函數從緩衝的危險廢棄物場所多邊形與敏感區域的交集產生多邊形。ST_Area 函數傳回每一個危險場所的相交多邊形區域。

SELECT sa.name, hs.name,
       db2gse.ST_Area(db2gse.ST_SymmetricDiff (db2gse.ST_Buffer(hs.location,(5 * 5280)),sa.zone))
FROM HAZARDOUS_SITES hs, SENSITIVE_AREAS sa 

圖 38. 使用 ST_SymmetricDiff 判斷不含敏感區域 (有人居住的建築物) 的危險廢棄物區域。


top

圖 38中,危險廢棄物場所與敏感區域的對稱差集會減少相交區域。


[ 頁面頂端 | 前一頁 | 下一頁 | 目錄 | 索引 ]