개발을 하다 보면 엑셀로 정리된 데이터를 DB 테이블에 Insert 하여 작업하는 경우가 종종 있다. 이런 경우 엑셀 데이터를 Postgresql DB로 Import 하는 방법에 대해 알아보자.
예를 들어 다음과 같은 데이터가 있다고 생각해보자.
첫 번째 열부터 순서대로 이름, 나이, 주소를 나타내는 인적정보에 관한 데이터이다.
다음 데이터를 csv파일로 저장하게 되면 다음과 같은 형태로 저장되고, 기본적인 csv파일 저장 옵션은 ','(쉼표)로 구분이다.
이제 csv파일을 가지고 Postgresql DB에 Import 해보자.
copy 테이블명(id, field1, field 2) from 'C:\test.csv' with delimiter ',' csv header;
위와 같은 명령어로 csv파일을 DB로 import 할 수 있다. Insert와 마찬가지로 Import 할 필드명을 지정할 수 있고, csv의 파일 경로는 항상 신경 써서 확인해주어야 한다.
'delimeter'는 데이터의 구분자인데 기본적으로 엑셀에서 csv로 저장을 하게 되면 ','로 구분되고 만약 탭으로 구분되는 경우에는 ' '으로 변경하여 작성한다. 탭과 쉼표가 아닌 다른 구분자를 사용하게 되면 그에 맞게 변경하여 작성하면 된다.
마지막에 있는 header 옵션을 적용하게 되면 엑셀 파일의 첫 번째 행을 header로 인식하게 된다. 본 예제에서는 header가 따로 없기 때문에 적용하지 않아도 되는 옵션이다.
csv파일을 import 하는 방법은 쿼리문을 작성하지 않고 pgAdmin을 사용하는 방법도 있다. pgAdmin을 사용하는 방법에 대해서는 다음 포스팅에서 알아보자.
pgAdmin 사용하여 csv파일 import : https://dev-jy.tistory.com/3
'💾DB' 카테고리의 다른 글
[PostgreSQL] Extract 함수 (날짜 시간 추출) (0) | 2022.07.06 |
---|---|
[PostgreSQL] pgAgent (0) | 2022.06.10 |
[PostgreSQL] UPDATE/DELETE JOIN (0) | 2022.01.24 |
[PostgreSQL] import csv file with pgAdmin (0) | 2021.08.25 |
[PostgreSQL] dblink사용하기 (0) | 2021.08.25 |