有没有人知道如何使用TOAD中的数据分析师的报表自动化将多个查询的结果导出到同一Excel工作簿的不同工作表中? 谢谢
答案 0 :(得分:3)
我不确定你是否可以自动使用Toad,但是你可以用Excel做一些小技巧。
编写第一个查询并在Toad中执行,然后右键单击查询结果数据网格并选择“导出数据集...”,在Excel格式下选择“Excel实例”并单击“确定”。它将打开Excel并添加一张包含查询数据的工作表。
对第二个查询重复相同的过程,它会将另一个工作表添加到同一个文档并填充第二个查询的数据。
执行完所有查询并将其添加到Excel保存Excel文档后。
如果您想完全自动执行此操作,还有另一种解决方案可用于创建具有多个工作表的单个Excel文档,这些工作表加载了来自不同查询的数据。购买第三方PL / SQL包,ORA_EXCEL。
以下是如何执行此操作的示例:
BEGIN
ORA_EXCEL.new_document;
ORA_EXCEL.add_sheet('Employees');
ORA_EXCEL.query_to_sheet('select * from employees');
ORA_EXCEL.add_sheet('Departments');
ORA_EXCEL.query_to_sheet('select * from departments', FALSE);
ORA_EXCEL.add_sheet('Locations');
ORA_EXCEL.query_to_sheet('select * from locations');
-- EXPORT_DIR is an Oracle directory with at least
-- write permission
ORA_EXCEL.save_to_file('EXPORT_DIR', 'example.xlsx');
END;
它可以生成Excel文件并将其存储到Oracle目录中,或者您可以将生成的Excel文件存储到PL / SQL BLOB变量中,这样您就可以将其存储到表中或创建自己的进程来分发文件,例如将其发送到电子邮件。 / p>
您可以在产品文档/示例页面上找到更多详细信息:http://www.oraexcel.com/examples
干杯
答案 1 :(得分:2)
我不认为TOAD中存在此功能。
直接从PL / SQL导出到Excel的常用解决方案 - 用于SYLK api的Tom Kyte的OWA_SYLK包装器 - 仅适用于单个工作表。有几种替代解决方案。
Sanjeev Sapre有他的get_xl_xml包。顾名思义,它使用XML进行转换。 Find out more。
Jason Bennett编写了一个生成Excel XML文档的PL / SQL对象。 Find out more.
答案 2 :(得分:0)
您不再需要编写代码来输出多个工作表的数据。 只要您的SQL清楚地标识了查询(使用分号),TDA或现在TDP将自动转储不同工作表中不同SQL的数据。
答案 3 :(得分:0)
我有Toad for Data Analyst 2.6。我在查询之间使用关键字GO。
Select * from tableA;
GO
Select * from tableB;
这会在Excel中创建两个选项卡。