2015-04-02 22 views
-1

有兩個表格分別叫table1table2如何在sqlserver 2008R2/ssis中爲日期導出單獨的Excel表格和日期時間?

我需要將數據根據病情

Table1 

date   col2 col3 etc 
2015-01-01  
2015-03-03 
2015-02-27 

列需要從412列

Table2 
date name amount ..... 276  
2015-01-01  
2015-02-01  
2015-02-04 
2015-02-02  
2015-02-15 
2015-02-24  

注意導出:現在我需要在Excel工作表從table1導出爲匹配的日期。

每張Excel工作表都應該包含該日期的相應記錄,因爲我們對table1中的每個日期都有> = 1000到1的匹配記錄。

Excel工作表名稱應該是table name_2015-01-01.xlsx,所以從上表中我必須導出3個Excel工作表。

請在ssis或bcp中親自提供一個示例。

+0

這是一個廣泛的話題。究竟哪一部分是你堅持的? – 2015-04-02 18:47:17

+0

感謝Alleman的回覆。我有一個簡單的想法,通過使用while循環,我們可以實現它,但我無法實現它,所以你可以通過發佈zip格式的SSIS packgae來幫助我,以便我可以理解開發的軟件包或代碼。 – NSNR 2015-04-03 01:10:55

+0

編寫一個SSIS包,將其壓縮併發送給您?那很好笑!嘗試谷歌搜索:「ssis導出到多個Excel工作表」。祝你好運! – 2015-04-03 13:56:53

回答

0

首先準備所需的SQL查詢結果並使其在批處理文件

關閉@echo 組datekey =%1

BCP「SELECT COL1, ' 「」' + ISNULL(COL2, '' )FROM tbalename WHERE DATE_KEY =%datekey%「queryout path _%datekey%.csv -c -t,-r \ n -S」servername「-U username -P pwd -d databasename

現在我們需要創建excel文件分別與tablename_date.csv /.xlsx

fo r我已經生成了需要日期的exell表格

bcp「select table from table」queryout path \ filename.csv -c -t,-r \ n -S「servername」-U username -P pwd - d數據庫名稱

現在我需要保持在要求的日期爲循環,並呼籲雙方各批處理文件

集BFILE =「路徑\ firstbatchfile.bat」 組重新提交=「路徑\ 2ndbatchfile.bat」 通話%refile%%A FOR/F %% A IN(2ndbatchfileoutput.txt)DO( call%bfile %%% A )

現在我將安排主批處理文件。

相關問題