sql – 返回多个结果集的查询

前端之家收集整理的这篇文章主要介绍了sql – 返回多个结果集的查询前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个查询,它将返回任意数量的结果集,所有结果集都具有相同的列 – 即一个用于Manager,然后一个每个员工都表示Manager负责.

在Mgmt Studio中运行sql工作正常 – 我的’master’和’details’表成功呈现.但是,如果我只是在SSRS报告向导中的数据集查询中输入相同的sql,则只会报告第一个结果集.

如何在一份报告中将我的一个Master所有详细信息结果集呈现为单独的表?关键是查询生成任意数量的结果集.

解决方法

可悲的是,从 2008 documentation

…A result set from a relational database,which can result from running database commands,stored procedures,or user-defined functions. If multiple result sets are retrieved through a single query,only the first result set is processed,and all other result sets are ignored.

所以我担心你只能选择更复杂的选择.我建议:

>将所有结果集UNION ALLed返回到一个大型结果集中,并附加一列以指示结果的每个部分用于哪个经理/员工,或者
>创建“主”报告和附带的代码,为您报告的每个经理/员工显示子报告.子报表将使用存储过程的一个版本,一次为一个人呈现报表结果.

后者可能是更清洁的方法.

猜你在找的MsSQL相关文章