CSVファイルがあって、それを一気にSQL文に変換してpgAdmin3にぶっこんで処理してしまいたいこと、ありますよね。
そんなとき便利なのがAWK。
Windows用のAWK(gawk)はここでダウンロードできます。
解凍してgawk.exeをsystem32フォルダなどにコピーしておくと便利。
WindowsのコマンドプロンプトでAWKを使う場合、シングルクォート(’)が使えませんので、手続きファイルを用意して、そこに処理を書くのが吉のようです。(\(バックスラッシュ)でエスケープできますので、がんばればコマンドプロンプトでもいろいろできます。)
3,1,1
3,1,1
4,1,1
みたいなCSVファイル(ここではdata.csvとします)がある場合、
{
print "INSERT INTO test(a, b, c) VALUES(" $0 ");"
}
という手続きファイル(ここではtest.awkとします)を用意。
で、
gawk -f test.awk data.csv > test.sql
とすれば、一瞬でSQL文に変換できちゃいます。
便利。