首页 >数据库 >mysql教程 >如何使用 SQLPLUS 将 SQL 查询结果假脱机到 CSV 文件?

如何使用 SQLPLUS 将 SQL 查询结果假脱机到 CSV 文件?

DDD
DDD原创
2025-01-17 20:34:11565浏览

How to Spool SQL Query Results to a CSV File Using SQLPLUS?

使用SQLPLUS将SQL查询结果导出为CSV格式

问题:

如何仅使用SQLPLUS将SQL查询结果输出到CSV文件?

答案:

要在SQLPLUS中将查询结果导出到CSV文件,请按照以下步骤操作:

<code class="language-sql">-- 设置列分隔符为逗号
set colsep ,

-- 抑制标题行
set pagesize 0

-- 删除尾随空格
set trimspool on

-- 可选:禁用标题分隔符
set headsep off

-- 定义行大小和数字宽度
set linesize X  -- 将'X'替换为总列宽
set numw X      -- 将'X'替换为所需的数字宽度(避免ID上的科学计数法)

-- 将结果输出到目标CSV文件
spool myfile.csv

-- 执行您的查询
select table_name, tablespace_name 
from all_tables
where owner = 'SYS'
  and tablespace_name is not null;

-- 停止输出
spool off</code>

附加说明:

此方法会在字段之间留下一些空格。为避免这种情况,您可以使用以下变体:

<code class="language-sql">-- 使用竖线作为列分隔符
set colsep |  

-- 或者,您可以使用以下方法(可能会在逗号前引入空格)
set colsep ,
set trimspool on
sed 's/\s+,/,/' myfile.csv </code>

以上是如何使用 SQLPLUS 将 SQL 查询结果假脱机到 CSV 文件?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn