如何从 oracle sql 导出结果到 excel? [复制]

Posted

技术标签:

【中文标题】如何从 oracle sql 导出结果到 excel? [复制]【英文标题】:How to export result to excel from oracle sql? [duplicate] 【发布时间】:2018-07-11 09:38:35 【问题描述】:

假设我有一些选定的表格结果。我想将其导出为 excel 文件。使用 SQLdeveloper 可以轻松完成。但我想知道在查询级别有没有办法做到这一点。

假设我的桌子是MYTABLE

然后选择的结果集是

select * from MYTABLE

我想从上面的选择语句中生成一个 excel 表。

【问题讨论】:

【参考方案1】:

您无法获取 XLS(X) 文件,但 CSV(逗号分隔值)足以让 Excel 将其打开。例如:

SQL> show user
USER is "SCOTT"
SQL> set colsep ';'
SQL> set pagesize 0
SQL> set linesize 100
SQL> spool emp.csv
SQL> select * from emp;
      7369;SMITH     ;CLERK    ;      7902;1980-12-17;       800;          ;        20
      7499;ALLEN     ;SALESMAN ;      7698;1981-02-20;      1600;       300;        30
      7521;WARD      ;SALESMAN ;      7698;1981-02-22;      1250;       500;        30
      7566;JONES     ;MANAGER  ;      7839;1981-04-02;      2975;          ;        20
      7654;MARTIN    ;SALESMAN ;      7698;1981-09-28;      1250;      1400;        30
      7698;BLAKE     ;MANAGER  ;      7839;1981-05-01;      2850;          ;        30
      7782;CLARK     ;MANAGER  ;      7839;1981-06-09;      2450;          ;        10
      7788;SCOTT     ;ANALYST  ;      7566;1982-12-09;      3000;          ;        20
      7839;KING      ;PRESIDENT;          ;1981-11-17;     10000;          ;        10
      7844;TURNER    ;SALESMAN ;      7698;1981-09-08;      1500;         0;        30
      7876;ADAMS     ;CLERK    ;      7788;1983-01-12;      1100;          ;        20
      7900;JAMES     ;CLERK    ;      7698;1981-12-03;       950;          ;        30
      7902;FORD      ;ANALYST  ;      7566;1981-12-03;      3000;          ;        20
      7934;MILLER    ;CLERK    ;      7782;1982-01-23;      1300;          ;        10

14 rows selected.

SQL> spool off;
SQL> $emp.csv

命令提示符下的“正在运行”(或“正在执行”)EMP.CSV 实际上会启动 Excel 并打开文件。

SET set 可以/应该修改,使最终输出看起来更漂亮;我发布的那个确实是一种快速而肮脏的方法。

【讨论】:

以上是关于如何从 oracle sql 导出结果到 excel? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何将 SQL 结果生成到 Excel 工作表 (Oracle)

怎么从oracle导出数据到excel

在delphi中如何将查询结果导出到excel中

SHELL中如何将txt文件导入到oracle中,在oracle中经过sql语句后如何将结果导出

pl/sql 把查询结果导出为dmp文件

如何将SQL server 2008 里的查询结果导出到 Excel 表内?