返回列名以及oracle select query-导出到excel的结果

时间:2015-10-06 05:54:16

标签: excel oracle oracle-sqldeveloper export-to-excel

我需要在oracle select query中获取结果集中的列名。当我将Oracle SQL Developer中的结果集复制到excel时,只会复制数据。不是列名。

我知道我可以使用dba_tab_columns来获取表的列信息,但我想要一种方法将其包含在行格式中并带有结果。 此外,我不想使用union查询对列名进行硬编码,因为我需要使用许多表和很多列。

导出选项对我来说也不起作用,因为我使用Citrix连接到远程服务器。所以它保存到远程机器路径。不是本地路径

3 个答案:

答案 0 :(得分:2)

您可以使用UNION技巧:

SELECT 'column1',
       'column2',
       'column3',
       1 AS x
  FROM yourTable
UNION
SELECT column1,
       column2,
       column3,
       2 AS x
  FROM yourTable
ORDER BY x;

如果列数很大,那么您可以使用dba_tab_columns从表中获取列名并执行UNION逻辑。

答案 1 :(得分:2)

SQL Developer 提供了很多选项。您可能会遗漏某些内容,否则将查询结果保存为Excel 导出选项可以完成此任务。

  1. 运行语句(Ctrl + Enter)
  2. 右键点击查询结果,然后选择导出
  3. enter image description here

    1. 导出向导中,选择 excel 2003 +(xlsx),并确保勾选标题复选框。
    2. enter image description here

答案 2 :(得分:1)

有一种非常简单的方法可以达到你想要的效果。如果我找到你,你将结果复制/粘贴到excel,对吗?

但是,如果您想拥有完整数据(包括列名),则只需将查询作为脚本执行即可。

“正常”“播放按钮”旁边有一个“执行脚本”按钮。

enter image description here

你会得到这样的结果:

C1                      C2                            C3                        C4     C5
---------------------- ------------------------------ ------------------------- ----- ------ 
8                      SOMETHING                       1337                      A     1337 

您可以在剪贴板中完全复制此输出并将其粘贴到Excel中。