在成产环境中,经常会有各种出report的需求,可以在数据库中将需要的信息查询出来,然后生成csv文件,定期使用邮件发出
本例将讲解两种将查询结果导出到Excel的方法:
1.SQLCMD
使用SQLCMD简单方便:
关于SQLCMD的参数介绍,可以参考官方文档:
https://docs.microsoft.com/zh-cn/sql/tools/sqlcmd-utility?view=sql-server-2017
在CMD中执行以下语句即可:
CMD:sqlcmd -S VWBJVWTSQLT1165 -E -Q "select * from [Score_Analysis].[dbo].[Temp_XPF] order by id desc" -o"D:\BI_Test\1.csv" -s"," -W
-E是信任连接,使用该参数就不用输入账号密码, -Q是执行查询并退出, -s是分隔符,-s","是指将查询结果按照","来分隔,这样才会在Excel中显示为分列的结果,
-W是指在结果中将字符后面的空格都删掉,-o是指输出到文件,本例将查询结果输出到csv文件。
如果查询语句比较复杂,可以将查询语句保存在.sql文件中,比如test.sql,然后将-Q参数替换成-i,输入该文件:
-Q "