*我正在使用sqlplus将一些数据从oracle数据库假脱机到CSV文件,我的结果表有44列和7000多行,但是当它假脱机到csv时,它在excel(索引A到Z)中也只显示26列一些行被截断。我希望所有列都应打印在一行中。 我尝试增加'linesize',但最大值为32767,所以它也不起作用,我也尝试了'wrap on',但是下一行的26th(Excel中的Z)索引之后的列。
SET echo off
set embedded on
SET linesize 32767
SET LONG 90000
SET LONGCHUNKSIZE 90000
SET wrap off
SET heading off
SET pagesize 1000;
SET feed off;
SET colsep ','
SET termout off;
set trimout on;
SET trimspool ON;
SELECT * FROM ix_web_user;
spool results.csv append;
SET newpage none;
/
spool off
我希望所有列都应打印在一行中,并且行不应被截断。*
答案 0 :(得分:0)
您可以导出具有不同列的多个csv文件,但是每个文件中的一列必须是唯一的行标识符。 例如,第一个文件包含22列,第二个文件具有23列。 一个简单的脚本按标识符连接行,结果是最终文件有44列,行长超过32768。
file1.csv
id,col1,col2,col3,col4,col5,col6,col7,col8,col9,col10,col11,col12,col13,col14,col15,col16,col17,col18,col19,col20,col21,col22,col23,col24,col25,col26,col27,col28,col29,col30,col31,col32,col33,col34,col35,col36,col37,col38,col39,col40,col41,col42,col43
joe,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,2411111111111111111111111111111111111111111111111111111111111
sam,21,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,451111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
mary,31,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,30111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111
file2.csv
id,col1,col2,col3,col4,col5,col6,col7,col8,col9,col10,col11,col12,col13,col14,col15,col16,col17,col18,col19,col20,col21
joe,33311111111111111111111111111111111111111111111111111111111111111111111111111111111111,33311111111111111111111111111111111111111111111111111111111111111111111111111111111111
mary,5551111111111111111111111111111111111111111111111111111111111111111111111111111111111,5551111111111111111111111111111111111111111111111111111111111111111111111111111111111
sam,44411111111111111111111111111111111111111111111111111111111111111111111111111111111111,44411111111111111111111111111111111111111111111111111111111111111111111111111111111111
文件merge.ps1
$file1=(import-csv file1.csv -header id,col1,col2,col3,col4,col5,col6,col7,col8,col9,col10,
col11,col12,col13,col14,col15,col16,col17,col18,col19,col20,
col21,col22,col23,col24,col25,col26,col27,col28,col29,col30,
col31,col32,col33,col34,col35,col36,col37,col38,col39,col40,
col41,col42,col43)[1..9999]
$file2=(import-csv file2.csv -header id,col1,col2,col3,col4,col5,col6,col7,col8,col9,col10,
col11,col12,col13,col14,col15,col16,col17,col18,col19,col20,
col21)[1..9999]
$file1|
%{
$id=$_.id
$m=$file2|?{$_.id -eq $id}
$_.col23=$m.col1
$_.col24=$m.col2
$_.col25=$m.col3
$_.col26=$m.col4
$_.col27=$m.col5
$_.col28=$m.col6
$_.col29=$m.col7
$_.col30=$m.col8
$_.col31=$m.col9
$_.col32=$m.col10
$_.col33=$m.col11
$_.col34=$m.col12
$_.col35=$m.col13
$_.col36=$m.col14
$_.col37=$m.col15
$_.col38=$m.col16
$_.col39=$m.col17
$_.col40=$m.col18
$_.col41=$m.col19
$_.col42=$m.col20
$_.col43=$m.col21
}
$file1|Export-Csv "file3.csv" -NoTypeInformation
输出file3.csv
"id","col1","col2","col3","col4","col5","col6","col7","col8","col9","col10","col11","col12","col13","col14","col15","col16","col17","col18","col19","col20","col21","col22","col23","col24","col25","col26","col27","col28","col29","col30","col31","col32","col33","col34","col35","col36","col37","col38","col39","col40","col41","col42","col43"
"joe","1","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","2411111111111111111111111111111111111111111111111111111111111",,"33311111111111111111111111111111111111111111111111111111111111111111111111111111111111","33311111111111111111111111111111111111111111111111111111111111111111111111111111111111",,,,,,,,,,,,,,,,,,,
"sam","21","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","451111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",,"44411111111111111111111111111111111111111111111111111111111111111111111111111111111111","44411111111111111111111111111111111111111111111111111111111111111111111111111111111111",,,,,,,,,,,,,,,,,,,
"mary","31","2","3","4","5","6","7","8","9","10","11","12","13","14","15","16","17","18","19","20","30111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111",,"5551111111111111111111111111111111111111111111111111111111111111111111111111111111111","5551111111111111111111111111111111111111111111111111111111111111111111111111111111111",,,,,,,,,,,,,,,,,,,