본문 바로가기
공간정보/한줄 팁(Tip)

한줄 팁 - Postgresql에서 CSV 바로 만들기

by 요긴소프트 2022. 2. 16.
728x90
반응형

Postgresql의 Copy라는 명령어로 간단하게 CSV(Comma Separated Values) 포맷 파일을 만들 수 있습니다.

즉 좌표가 포함된 PostGIS 레이어 테이블도 간단하게 CSV 파일로 만들 수 있습니다. 문법은 아래와 같습니다.

 

COPY [Table 이름 또는 쿼리] to '[파일경로/파일이름.csv]' csv header;

파일경로는 서버에서 수행할 경우 절대 경로로 해줘야 합니다.

이 명령어를 이용해 PostGIS 레이어 테이블에서 폴리곤으로 되어 있는 레이어에서 중심점 좌표만 추출한 CSV 파일을 만들고자 한다면 다음과 같이 명령어를 만들 수 있습니다.

COPY (
select gate_no, gate_nm, st_x(st_centroid(st_transform(geom,4326))) as x, st_y(st_centroid(st_transform(geom,4326))) as y 
from gate )
TO '/home/yoginsoft/temp/gate.csv' WITH (FORMAT csv, HEADER true);

위 예제에서는 gate 테이블이 구글좌표계(EPSG:3857)의 폴리곤 레이어라면, geom을 경위도 좌표계(EPSG:4326)로 변환하고 중심점을 얻어서 x, y로 분리한 후에 copy 명령어로 gate.csv 파일로 저장하는 것입니다.

 

728x90
반응형