我可以在SQL Assistant
中完美地执行此操作,结果将显示在2个标签中,这些标签可以保存到带有2个标签的excel
文件中。
BT;
sel <query1>
;
Sel <query2>
;
ET
我想知道在BTEQ
中是否可以做类似的事情。我非常希望有希望,但我想我已经完成了我的询问。使用BTEQ
我可以将2个不同的查询导出到2个不同的excel
文件,这很好。我想知道它是否可能。将2个查询的o / p导出到带有2个选项卡的单个excel
文件中
还有一个小的推论问题:在SQL Assistant
中,是否可以将2个查询的结果按顺序运行到2个标签,excel
报告通过某种方法而不是 {{ 1}}
(BTET
中{P.S BTET
没有意义,我只在BTEQ
中使用它。所以不要指使用SQL Ass
)
答案 0 :(得分:1)
在SQL Assistant中,设置Tools -> Options -> General -> Use a separate Answer window for
,默认设置为Each Query
。当您运行多个选择使用F5或F9时,您将所有结果集作为选项卡放在一个窗口中,然后File -> Save
会要求保存所有工作表?这与{{1}无关}。
在BTEQ中,没有办法将多个结果合并到一个文件中,实际上不支持Excel,它只是非常旧的DIF格式而不是#&# 39; t支持多个标签。
答案 1 :(得分:1)
我遇到过类似的问题。 您可以做的是使用BTEQ将数据导出为CSV,然后使用VBS脚本打开Excel文件并在新工作表中复制CSV。 首先,您需要删除旧的,否则将重命名。
Option Explicit
Dim MyPath, objExcel, objWorkbook, objSourceData, objTargetSheet
MyPath = "C:\Users\user\"
Set objExcel = CreateObject("Excel.Application")
objExcel.Application.Visible = True
Set objWorkbook = objExcel.Workbooks.Open(MyPath & "ExcelFile.xlsx")
objExcel.Application.DisplayAlerts = False
objExcel.Sheets("worksheetname").Delete
objExcel.Application.DisplayAlerts = True
Set objSourceData = objExcel.Workbooks.Open(MyPath & "csvfilename.csv")
objSourceData.sheets(1).Copy objworkbook.Sheets(objworkbook.Sheets.Count)
objworkbook.Save
objworkbook.Close
objExcel.Application.Quit
WScript.Quit