bash 스크립트를 통해 csv 형식으로 postgres 데이터를 다운로드하는 방법은 무엇입니까?

bash 스크립트를 통해 csv 형식으로 postgres 데이터를 다운로드하는 방법은 무엇입니까?

데이터베이스에 연결하여 출력을 얻을 수 있지만 올바른 형식이 아닙니다. 그렇다면 어떻게 csv 형식과 같은 출력을 얻고 이를 csv 형식으로 저장하고 싶습니까?

psql -d <db> -U <user> -W -h <host> --output=datanew.csv -c "SELECT * FROM employee limit 10;"

답변1

버전 12부터 psql--csv 명령줄 옵션이 있습니다. ~에서psql 매뉴얼:

--csv

Switches to CSV (Comma-Separated Values) output mode. 
This is equivalent to \pset format csv.

이전 버전을 사용하는 경우 SQL 명령을 사용하여 CSV 형식으로 내보낼 COPY수 있습니다 . SELECT예를 들어:

psql [other options] --output=datanew.csv -c "COPY (SELECT * FROM employee limit 10) TO STDOUT (FORMAT csv, HEADER on)"

관련 정보