首页 >数据库 >mysql教程 >如何将 SQLPLUS 查询结果导出到 CSV 文件?

如何将 SQLPLUS 查询结果导出到 CSV 文件?

DDD
DDD原创
2025-01-17 20:41:10942浏览

How to Export SQLPLUS Query Results to a CSV File?

*导出 SQL加上查询结果到 CSV**

问题:如何将 SQL*Plus 查询结果直接导出到 CSV 文件?

解决方案:

SQL*Plus 提供了一种将查询输出假脱机到 CSV 文件的简单方法。 请按照以下步骤操作:

<code class="language-sql">SET COLSEP ','       -- Set comma as column separator
SET PAGESIZE 0       -- Suppress header rows
SET TRIMSPOOL ON     -- Remove trailing whitespace
SET HEADSEP OFF      -- Remove header separation (optional)
SET LINESIZE X       -- Adjust line width (X = sum of column widths)
SET NUMW X           -- Adjust numeric field width (X = appropriate value to avoid scientific notation)

SPOOL myfile.csv     -- Specify output file name

SELECT table_name, tablespace_name
  FROM all_tables
 WHERE owner = 'SYS'
   AND tablespace_name IS NOT NULL;

SPOOL OFF             -- Close the spool file</code>

这会创建带有逗号分隔值、无标题行和修剪空白的 myfile.csv。 示例输出可能如下所示:

<code>TABLE_PRIVILEGE_MAP,SYSTEM
SYSTEM_PRIVILEGE_MAP,SYSTEM
STMT_AUDIT_OPTION_MAP,SYSTEM
DUAL,SYSTEM
...</code>

要进行额外的清理,请使用以下命令删除逗号之前的前导空格:

<code class="language-bash">
sed 's/\s\+,/,/g' myfile.csv > myfile_cleaned.csv
```  This creates a new file `myfile_cleaned.csv` with the extra whitespace removed.</code>

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

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