CSV データによる Postgres テーブルの行の更新
このガイドでは、CSV ファイルのデータを使用して PostgreSQL テーブルの特定の行を効率的に更新する方法を説明します。 このプロセスには、いくつかの重要なステップが含まれます:
まず、CSV データを保存するための一時テーブルを作成します。 COPY
コマンドは、CSV ファイルをこの一時テーブルにインポートするために使用されます。 /absolute/path/to/file
を CSV ファイルへの実際のパスに置き換えてください。
<code class="language-sql">CREATE TEMP TABLE tmp_data (id int, apple text, banana text); COPY tmp_data FROM '/absolute/path/to/file' (FORMAT csv);</code>
次に、UPDATE
ステートメントは、tbl
列に基づいてメイン テーブル (tmp_data
) と一時テーブル (id
) を結合します。これにより、対応する行のみが確実に更新されます。
<code class="language-sql">UPDATE tbl SET banana = tmp_data.banana FROM tmp_data WHERE tbl.id = tmp_data.id;</code>
最後に、一時テーブルは不要になったので削除します。
<code class="language-sql">DROP TABLE tmp_data;</code>
このメソッドは、CSV からの関連データのみを利用して、行を選択的に更新します。大きなテーブルの場合は、一時テーブルにインデックスを付け、一時バッファ設定を調整することでパフォーマンスを最適化することを検討してください。 適切なデータベース権限も、正常に実行するために重要です。
以上がCSV ファイルのデータを使用して特定の Postgres 行を更新するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。