我正在处理我的第一个SSRS报告,但是我还没有找到有关如何创建报告的一般准则。具体来说,我想知道当报表上需要汇总数据时的一般方法是什么。例如,假设我需要在报告中显示以下内容:
煎饼--- 34
鸡蛋---------- 56
培根-------- 73
我还有更多类似上述的行,需要显示汇总数据。我目前正在按类型对整行进行分组,然后在每个单元格上显示一个计数,如下所示:[Count(Status)]。
我的报告已经花了45秒钟以上的时间来运行。通常最好在查询中像这样进行聚合吗?还是这取决于返回的数据量?任何指针,不胜感激。谢谢!
与所有SQL答案一样:它取决于。
但是通常在SQL中进行聚合。SQL Server在执行聚合方面比报表层要好得多。同时减少行的返回将减少您的数据传输和SSRS需要处理的数据量。通常,仅当存在其他约束使得无法在SQL查询中进行聚合时,或者如果这样做会使将来更难以维护报告,您才只想在报告层进行聚合。(以可维护性的名义肯定会牺牲一些性能。)一种情况是,当您需要显示所有数据并返回两个数据集时,要么过于复杂,要么实际上会降低报告的性能。 。
附带说明一下,如果您的报告花了45秒钟以上的时间来运行,则可能是您的SQL没有得到很好的优化,或者您的报告做了很多复杂的计算。您可以在SQL Server上投入的工作越多,您的性能就会越好。SQL Server是为处理数字和进行汇总而设计的,因此一定要让它在可能的情况下尽其所能。
YMMV,因此请始终对不同的方法进行性能测试,以了解最有效的方法。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句