MAANDOO · JOURNAL

PostGIS

개발하며 배운 것과 일상의 생각을 기록합니다.

PostGIS · 2022. 7. 11.

[PostGIS] st_equals 함수 속도 느림 공간 index 안타는 문제

공간 테이블 geometry 컬럼 gist 인덱스 설정되어 있는 상태 st_equals 함수 사용하면 속도가 너무 느림. 공간 인덱스 안타는 것 같음 느린 쿼리문 SELECT t1.geom, t2.geom FROM table_a t1 join table_a t2 ON st_equals(t1.geom, t2.geom) 인덱스 타도록 쿼리문 수정 SELECT t1.geom, t2.geom FROM table_a t1 join…

PostGIS · 2022. 6. 29.

[PostGIS] 좌표계 변환 함수(ST_Transform, ST_SetSRID)

국가공간정보포털에서 제공하고 있는 공간 데이터를 활용하려고 shp 파일을 다운로드해서 내 DB 에 업로드하였다. 내 DB 에 구축되어 있는 모든 공간 데이터는 5186 좌표계 국가공간정보포털에서 다운로드 받은 공간 데이터는 2097 좌표계 QGIS 에서 해당 파일 좌표계 정보 확인 기존 DB 에 구축된 공간 정보들과 같이 서비스하기 위해서 좌표 변환 필요 2097 좌표계 파일을 그대로 공간 테이블에 import 해당 테이…

PostGIS · 2022. 5. 31.

[PostGIS] ST_CollectionExtract

GEOMETRYCOLLECTION 타입 객체 안에 어떤 공간 객체가 있는지 확인하고 싶을 때 사용하였다. ST_CollectionExtract(geometry collection, integer type); type 을 지정하면 GEOMETRYCOLLECTION 안에 지정한 type 객체만 조회된다. 지정한 type 이 없을 경우 EMPTY 반환. 1 == POINT 2 == LINESTRING 3 == POLYGON

PostGIS · 2022. 5. 27.

[PostGIS] geosintersects topologyexception 발생 시 대처 방법

공간 쿼리 수행 중 st_intersects 함수에서 geosintersects topologyexception 발생. 원인 : Geometry 객체 중 MULTIPOLYGON 객체 데이터가 유효하지 않은 상태라서 st_intersects 함수 실행 불가. MULTIPOLYGON 객체에 구멍이 있는 경우 OGC 표준에 맞게 그려지지 않아서 자주 발생. 객체가 유효한지 확인하는 방법 SELECT st_isvalid(geom…

PostGIS · 2022. 5. 27.

[PostGIS] Polygon 단위로 겹치는 Geometry 조회

두개의 Geometry 객체가 겹치는지 조회하는 함수는 st_intersects(geom, geom) 이다. 프로젝트 중 두개의 Geometry 객체가 Polygon 단위로 겹치는지 체크하고 싶어서 해당 함수을 사용하였으나 point, line 단위로 겹치는 객체까지 모두 반환한다. 아래 쿼리를 활용하면 Polygon 단위로 겹치는 객체만 체크할 수 있다. SELECT * FROM TABLE_A A JOIN TABLE_B…

PostGIS · 2022. 5. 27.

[postgresql] postGIS 공간 쿼리 함수

1. ST_AREA 멀티 폴리곤의 면적을 반환. 멀티 폴리곤 GEOMETRY TYPE 만 가능하다. SELECT ST_AREA(GEOM) FROM TABLE; 2. ST_ASBINARY GEOMETRY 객체를 WKB(Well Known Binary) 형태로 반환 SELECT ST_ASBINARY(GEOM) FROM TABLE; 3. ST_ASTEXT GEOMETRY 객체를 WKT(Well Known Text) 형태로 반환…

© 2026 Maandoo