使用者の手引きおよび解説書

ST_Difference

ST_Difference は 2 つの図形オブジェクトを引き数とし、ソース・オブジェクト間の差である図形オブジェクトを戻します。 ST_Difference の 2 つの入力図形は同じ次元にしてください。次元が異なる場合、ヌルが戻されます。

構文

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

戻りタイプ

db2gse.ST_Geometry

都市開発担当者は、市内の敷地区域のうち建物の建っていない区域の面積の合計を知っていなければなりません。したがって、建物の建っている区域を除いた敷地区域の面積の合計が必要となります。

CREATE TABLE BUILDINGFOOTPRINTS (building_id integer,
                                 lot_id      integer,
                                 footprint   db2gse.ST_MultiPolygon);
 
CREATE TABLE LOTS (lot_id   integer,
                   lot   db2gse.ST_MultiPolygon);

都市開発担当者は、lot_id について BUILDINGFOOTPRINTS 表および LOTS 表を等価結合します。その後、建物のフットプリントを除いた、敷地の差となる区域の面積の合計を計算します。

SELECT SUM(db2gse.ST_Area(db2gse.ST_Difference(lot,footprint)))
FROM BUILDINGFOOTPRINTS bf, LOTS
WHERE bf.lot_id = LOTS.lot_id; 


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]