安排每日 SQL 查询并将结果作为 Excel 文件通过电子邮件发送
Schedule a daily SQL query and email results as Excel file
我需要安排在工作日上午 2:00 向 运行 发送报告,并将这些查询结果作为 Excel 文件通过电子邮件发送给最终用户。我通常使用 Excel 的 Power Query 查询数据仓库以获取其他报告。据我所知,我使用的 DW 工具 (Jet Data Manager) 或 Power Query 中不存在此特定功能。这个问题可以用 SSMS 解决吗?谢谢
使用纯 SQL 这样做将具有挑战性,但也许并非不可能。执行此类操作的最直接方法是使用 SSRS(SQL Server Reporting Services)。这将允许您构建格式化的报告以及设置计划、分发(到不同的格式,包括 Excel)等...实施 SSRS 对于一份报告来说可能有点过头了,但是如果您有其他类似的要求,它可以让你的生活更轻松。
纯粹的SQL方法可能涉及以下部分:
- 一个SQL代理作业可以提供调度等...
- SQL 服务器还有一个称为数据库邮件的功能 - 这通常配置为发送警报,但您也可以使用它来发送查询结果
- 棘手的部分是您的 excel 要求。 sp_send_dbmail(您将用于发送邮件的过程)允许您将查询结果附加到邮件中。但是,您可能不得不忍受 CSV 之类的东西(可以在 Excel 中打开)。
可能还有其他一些我没有想到的事情,但希望这会有所帮助。
我需要安排在工作日上午 2:00 向 运行 发送报告,并将这些查询结果作为 Excel 文件通过电子邮件发送给最终用户。我通常使用 Excel 的 Power Query 查询数据仓库以获取其他报告。据我所知,我使用的 DW 工具 (Jet Data Manager) 或 Power Query 中不存在此特定功能。这个问题可以用 SSMS 解决吗?谢谢
使用纯 SQL 这样做将具有挑战性,但也许并非不可能。执行此类操作的最直接方法是使用 SSRS(SQL Server Reporting Services)。这将允许您构建格式化的报告以及设置计划、分发(到不同的格式,包括 Excel)等...实施 SSRS 对于一份报告来说可能有点过头了,但是如果您有其他类似的要求,它可以让你的生活更轻松。
纯粹的SQL方法可能涉及以下部分:
- 一个SQL代理作业可以提供调度等...
- SQL 服务器还有一个称为数据库邮件的功能 - 这通常配置为发送警报,但您也可以使用它来发送查询结果
- 棘手的部分是您的 excel 要求。 sp_send_dbmail(您将用于发送邮件的过程)允许您将查询结果附加到邮件中。但是,您可能不得不忍受 CSV 之类的东西(可以在 Excel 中打开)。
可能还有其他一些我没有想到的事情,但希望这会有所帮助。