PostgreSQL / PostGIS 데이터베이스에 공간 테이블이 있습니다. 그 안의 모든 행은 다각형을 나타냅니다. 다음과 같은 형태입니다.
+----+--------+
|gid | way |
+----+--------+
|241 | 01030..|
기하 열은 "way"이며 다각형의 기하 구조를 포함합니다. WKT에서는 POLYGON (( '....'))입니다. 이 테이블에서 ST_Contains 쿼리를 많이 수행하여 두 개의 다각형이 서로 포함되어 있는지 테스트합니다.
Select ST_Contains(a.way, b.way) From table AS a, table AS b Where a.gid = 15 And b.gid = 16
이 쿼리 속도를 높이고 테이블에 공간 인덱스를 추가하는 방법이 궁금합니다.
CREATE INDEX table_way_gist ON table USING gist(way);
그러나 실제로는 속도가 향상되지 않습니다. ST_Contains 쿼리를 수행하기 전에 테이블을 모든 다각형으로 채운 후에 인덱스를 만듭니다. 테이블을 채우기 전에 인덱스를 추가해야합니까? 인덱스 작업을 위해 테이블에 특별한 요구 사항이 있습니까? 기하 기둥 방식의 투영 (분할)은 900913으로 설정됩니다.
사용중인 psql (PostgreSQL) 9.1.4 / POSTGIS = "1.5.3"