ST_Geometry 列を持つテーブルでの空間 SQL クエリの使用

ST_Geometry 列が格納されたテーブルに対して SQL クエリを実行すれば、テーブルそのものについての情報を返すようにすること、1 つのテーブルのフィーチャを別のテーブルのフィーチャと空間的に比較すること、または入力テーブルから新しいジオメトリを生成することができます。

空間インデックスを使用した ST_Geometry 列のクエリ

以下は、ST_Geometry タイプのジオデータベースに対して空間インデックスを使用して空間クエリを行う例をまとめたテーブルです。

DB2

db2 => SELECT sa.name "Sensitive Areas", hs.name "Hazardous Sites" 

FROM sensitive_areas sa, hazardous_sites hs 

WHERE db2gse.st_overlaps (sa.zone, db2gse.st_buffer (hs.location,.01)) = 1

Informix

SELECT sa.name sensitive_area, hs.name hazardous_site 

FROM sensitive_areas sa, hazardous_sites hs 

WHERE st_overlaps(sa.zone, st_buffer(hs.location, .01)) = 't';

Oracle

SELECT sa.name "Sensitive Areas", hs.name "Hazardous Sites" 

FROM sensitive_areas sa, hazardous_sites hs 

WHERE sde.st_overlaps (sa.zone, sde.st_buffer(hs.location,.01)) = 1;

PostgreSQL

SELECT sa.name AS sensitive_area, hs.name AS hazardous_sites

FROM sensitive_areas sa, hazardous_sites hs 

WHERE st_overlaps(sa.zone, st_buffer(hs.location,.01) = 't'); 

SQL 空間クエリ

関連項目


7/10/2012