フィールド間にスペースを導入しますが、以下を使用することもできます。
set colsep , -- separate columns with a comma
set pagesize 0 -- No header rows
set trimspool on -- remove trailing blanks
set headsep off -- this may or may not be useful...depends on your headings.
set linesize X -- X should be the sum of the column widths
set numw X -- X should be the length you want for numbers (avoid scientific notation on IDs)
spool myfile.csv
select table_name, tablespace_name
from all_tables
where owner = 'SYS'
and tablespace_name is not null;
出力は次のようになります:
TABLE_PRIVILEGE_MAP ,SYSTEM
SYSTEM_PRIVILEGE_MAP ,SYSTEM
STMT_AUDIT_OPTION_MAP ,SYSTEM
DUAL ,SYSTEM
...
これは、すべてのフィールドを入力してコンマで連結するよりもはるかに面倒ではありません。必要に応じて、簡単なsedスクリプトでフォローアップして、カンマの前に表示される空白を削除できます。
このようなものがうまくいくかもしれません...(私のsedスキルは非常に錆びているので、これにはおそらく作業が必要です)
sed 's/\s+,/,/' myfile.csv