spool abc.txt;????????????????????? #将结果输出为abc.txt
select * from wap_subscribe where Telcomcompanyid = '20200' and (Orderdate like '2005%' or Disorderdate like '2005%');
spool off;
在sql>模式下使用@/opt/abc.sh即可,查询结果即输出到abc.txt了。
输出到Excel文件
SQL> set termout off
SQL> set heading off
SQL> set pagesize 0
SQL> set verify off
SQL> set echo off
SQL> spool /tmp/aaa.csv
SQL> select id || ',' || name || ',' from test;?? #多字个段分列存放在表格中
1,,
2,,
3,6,
,7,
SQL> spool off
补充一下:
在将查结果保存到文件的时候,可能不希望将结果输出到屏幕,这样会影响速度。那么就可以能通过脚本的方式来解决。在命令行下面实现不了,所以写在脚本中,招行一下就可以了。
创建文件
more email.sql
set term off
spool user.txt
@get_email.sql
spool off
exit
more get_email.sql
select email from album.wdxc_user;
sqlplus [email protected]
sql>@email.sql
这样执行完了,就可以看到user.txt文件了。