問題タブ [postgresql-copy]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
45 参照

sql - Postgresql: EXECUTE 出力から csv データにエクスポート

集計データを csv ファイルにエクスポートしようとしています。以下のコードのように、postgresql のコマンド COPY を使用したいのですが、動的テーブルを返す EXECUTE コマンドからデータを取得しています。COPY コマンドはテーブルからのみデータを取得しますが、クエリの実行によって生成される列の数がわからないため、結果を一時テーブルに保存できません。また、大きなデータセットを保存しようとしていますが、中間テーブルに複製することは避けたいと思います. 誰かがこれに対する回避策を知っていますか?

0 投票する
0 に答える
130 参照

postgresql - Postgresql でデータをビューにコピーする方法

PostgreSQL のドキュメントには、COPY コマンドはテーブルに対してのみ実行できると記載されていますが、大量の CSV ファイルをビューにインポートする必要があります。

ビューである必要がある理由は、与えられた CSV に多数の [正規化されていない] 列があり、(INSERT トリガーを使用して) ビューを使用して列を解析し、それらを同化させたいためです。私の[正規化された]データベーステーブルに。

この CSV ファイルには 20,000 ~ 30,000 行あるため、CSV を正規化することは現実的ではありません。

import_stuffCSV をインポートするこのタスクは、おそらく数回以上発生する可能性が高いため、ビューを使用すると、試してみるよりも、数か月後に戻ってテーブルを識別しやすくなります。使用する関数を覚えておいてください。

何か案は?毎回この CSV を処理しようとして 1 ~ 2 週間を無駄にすることはできないため (CSV には、説明の末尾の長いスペース、間違ったエンコーディング、単一行名の改行など、多くの不整合があり、きれいにするだけで 3 日かかることがあります。データを正規化する前)