SQL语句查询结果导出到EXCEL
由于现在要写一个算法,是一个存储过程,功能是将一个表的数据分批导出到EXCEL中:
比如:
IF I=1 将 SELECT * FROM table1 WHERE i=1 的结果生成一个EXCEL ,名字为‘1.xls’
IF I=2 将 SELECT * FROM table1 WHERE i=1 的结果生成一个EXCEL ,名字为‘2.xls’
IF I=3 将 SELECT * FROM table1 WHERE i=1 的结果生成一个EXCEL ,名字为‘3.xls’
IF I=4 将 SELECT * FROM table1 WHERE i=1 的结果生成一个EXCEL ,名字为‘4.xls’
.
.
.
简单的说就是将查询结果导出到EXCEL ,文件名可以自定义,希望各位高手帮帮小弟,感激不尽。。。
------解决方案--------------------
试试这个,
SQL code
create proc scsp
(@i int)
as
begin
set nocount on
declare @sql varchar(6000)
select @sql='exec master..xp_cmdshell ''bcp "select cast([字段] as varchar(50))+' ' [字段名] from table1 where i='+cast(@i as varchar(5))
+' " queryout [导出路径]\'+cast(@i as varchar(5))+'.xls -c -q -S "[服务器名]" -U "[帐号]" -P "[密码]" -T '' '
exec(@sql)
end