次のようなファイルがあります(CSVファイル):
value1|value2|value2....
value1|value2|value2....
value1|value2|value2....
value1|value2|value2....
これらのデータをpostgresqlテーブルにロードしたいと考えています。
データがファイルvalues.txt
およびそれらをデータベーステーブルmyTable
にインポートする場合、次のクエリがジョブを実行します
COPY myTable FROM 'value.txt' (DELIMITER('|'));
https://www.postgresql.org/docs/current/static/sql-copy.html
PostgresのCOPYコマンドを確認してください。
前述のCOPY
コマンドを使用し、csv(およびMySQL、SQLite、dBase)からデータをロードできる Pgloader があります。また、データの読み取りとコピーに個別のスレッドを使用しているため、非常に高速です(興味深いことに、PythonからCommon LISPに書き込まれ、20〜30倍の速度向上が得られました。 ブログ投稿 )。
Csvファイルを読み込むには、次のような小さな設定ファイルを書き込む必要があります。
LOAD CSV
FROM 'path/to/file.csv' (x, y, a, b, c, d)
INTO postgresql:///pgloader?csv (a, b, d, c)
…