*导出 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中文网其他相关文章!