個人用メモ。 データ移行とかテスト用DB構築のため、dumpファイルを使うことが多いのですが、特定条件を満たすデータだけを移行したい場合があります。こんな場合の王道(?)は dumpファイルをimportして、いらないデータをDELETEする かと思いますが、HDD容量とかの関係でできない場合もあります。 そんな時は、データを間引いたdumpファイルを作ってそれをimportするようにしています。dumpファイルは基本的にテキストなので、grepでパターンを指定してやれば目的のデータは抽出できます。あとは、dumpファイルのヘッダ(先頭からCOPYコマンドまで)を抽出データの先頭にコピーしてやればOK。ヘッダはこんな感じ。 -- -- PostgreSQL database dump -- SET client_encoding = 'EUC_JP'; SET standard_confo