
私はそれを使用していますこれcsv形式でレコードを取得するUnixスクリプト。この目的のためにSQLクエリがあります。これには次の情報が含まれます。
SET PAGESIZE 5000
SET COLSEP ","
SET LINESIZE 2000
SET FEEDBACK OFF
SET NEWPAGE NONE
SET UNDERLINE OFF
PAGESIZE
スペースをもっと占めるからでしょうか?
スクリプトは4MB CSV(OBTM.csv
)ファイルを返しますが、それをCSV()ファイルに変換するとOBTM.xlsx
48KBになります。
私の疑いを明確にしてください
答え1
ほとんどの場合、すべてのレコードのすべてのフィールドはフィールドの幅にスペースで埋められます。クエリを確認する必要がありますが、select * from table
代わりに必要になる場合があります。
select rtrim(field1) || ',' || rtrim(field2) || ',' || rtrim(field3) -- ...
または、sedスクリプトを使用してcsvファイルを実行して、余分なスペースをクリーンアップします。
sed -i 's/[[:blank:]]\+,/,/g' OBTM.csv