日々常々

ふつうのプログラマがあたりまえにしたいこと。

テーブルのデータをCSV出力する(力技そのに)

これは試行錯誤の途中経過です。まとめ→http://d.hatena.ne.jp/irof/20100108/p2

      • -

「余計なスペースが入って欲しくない場合」の少々面倒なもの。取得したい列名が判っている必要があります。単純に文字列「,」で繋げてしまうだけなんですが。

set pages 0
set feedback off
set trimspool on
set linesize 32767

spool 出力ファイル名.csv
SELECT col1 || ',' || col2 || ',' || col3 FROM tablename;
spool off

この場合の出力内容はこんな感じ。1行目は「bbb 」と半角スペースが入っていたということにしました。

a1,bbb ,ccc
a2,,
a3,bbbbbbb,cccccccccc