我需要根据用户在SSRS报告中选择的参数对记录进行排序。这可以通过两种方式来完成: 1.我们可以在SSRS报告本身中进行排序2.或者我们可以在存储过程中对记录进行排序
我想知道在性能方面哪种方法是最好的
发布于 2014-08-06 10:10:57
直接在存储过程中进行排序通常具有最佳性能,因为在生成查询执行计划时可以考虑这一点。
发布于 2014-08-06 10:03:09
如果您在report.you中有行组或列组,则无需storedprocedure即可进行自己的排序。
发布于 2020-10-28 11:34:00
正如这里的技巧10中所强调的:https://www.mssqltips.com/sqlservertip/3659/sql-server-reporting-services-best-practices-for-performance-and-maintenance/
10:在T-查询级别对数据进行排序
在数据源中对大量数据进行排序比在报表处理期间更有效。在查询中使用ORDER BY子句可以在查询级别对数据进行预排序。由于预排序数据存储在内存中的方式,因此可以缩短报表处理时间。子组中的数据会自动排序,如果不需要排序,可以在表/矩阵的数据区域中删除排序表达式。
如果报告中的数据已排序,则:
对报告性能的影响-中等
对报告维护的影响-中等
小贴士17也值得注意:
17:避免在Reporting Services中使用交互式排序
避免使用交互式排序按钮,除非用户需要能够更改报表中数据的排序顺序。
https://stackoverflow.com/questions/25157175
复制相似问题