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

ST_Intersects

ST_Intersects は 2 つの図形を引き数とし、 2 つの図形の交差が空のセットを生成しない場合に 1 (TRUE) を戻します。そうでない場合、0 (FALSE) を戻します。

構文

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

戻りタイプ

整数

消防本部長は、危険廃棄物施設から半径 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; 


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