將sql 查詢結果導出到excel
阿新 • • 發佈:2017-12-28
過程 book 查詢 color shell 業務 文件的 arch exce
在平時工作中經常會遇到,sql 查詢數據之後需要發送給業務人員,每次都手工執行腳本然後拷貝數據到excel中,比較耗時耗力,可以考慮自動執行查詢並將結果郵件發送出來。
分兩步實現:
1、執行查詢將結果保存為excel,這裏使用存儲過程
1 Create procedure [dbo].[pr_Dept_Bak] 2 3 as 4 5 begin 6 7 ---這裏可以增加對數據表的查詢條件或更多的數據處理; 8 9 ---將結果放入一個新的數據表,然後將這個新表導出EXCEL文件; 10 11 declare @file_path varcharView Code(200);--導出EXCEl文件的路徑; 12 13 declare @file_name varchar(200);--導出EXCEl的文件名; 14 15 declare @exec_sql varchar(200);--SQL語句; 16 17 ---分開定義是為了以後修改路徑或文件名更方便。 18 19 set @file_path = ‘E:\Dept_Bak\‘ 20 21 set @file_name = ‘dept‘ + CONVERT(varchar(100), GETDATE(), 112)+‘.xls‘ 22 23 set @exec_sql = ‘select * from book.dbo.users_dept‘ ---數據表使用的完整路徑; 24 25 set @exec_sql = ‘ bcp "‘+@exec_sql+‘" queryout "‘+@file_path+‘‘+@file_name+‘" -c -T -U "sa" -P "SQLpassword"‘; 26 27 ----U "sa" -P "SQLpassword" 這是數據庫的sa賬號和密碼; 28 29 exec master..xp_cmdshell @exec_sql 30 31 end
將sql 查詢結果導出到excel