sql-server-2008 - SQL 中 where 语句的性能,而不是数据集上的过滤

标签 sql-server-2008 ssrs-2008 reporting-services

如果我搜索不够彻底,请鞭打我......

我想知道什么对性能更好:

使用 SQL(数据集中的 WHERE、Group by、Order By 语句)收集、聚合和排序我的数据 或者 只需收集“裸”数据并在报告中进行分组、排序和过滤。 (在报告中对数据集、参数和聚合进行筛选)

使用存储过程对性能有好处吗?

问候,

亨罗

最佳答案

嗯,SSRS 是一个显示结果的工具,它经过优化可以做到这一点,虽然它可以执行聚合和过滤以及更多的事情,但这并不意味着它是他的主要目标,所以它没有优化到去做。当您对数据集执行聚合、过滤器和数据操作时,您正在为此使用数据库引擎,它为此进行了优化,因此您很可能通过这种方式获得更好的性能。至于存储过程或纯 SQL,两者都没有内在的性能优势(我更喜欢纯 SQL 只是因为它给我更多的灵 active )。

关于sql-server-2008 - SQL 中 where 语句的性能,而不是数据集上的过滤,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10983749/

相关文章:

c# - 如何在 rdlc 中的表标题顶部而不是左侧显示按列分组

reporting-services - SSRS行组+列组=行号问题

sql - 具有相同列和相同 where 子句的两个表的并集

security - 在 SQL 2008 Server 中创建自定义 SQL Server 角色

c# - SQL 2008 : returning data rows as JSON?

sql - 从存储过程向 SQL Server 插入数据

ssrs-2008 - SSRS 2008-授予用户 'computer\username'的权限不足以执行此操作。 (rsAccessDenied)

reporting-services - 在 SSRS 报告中使用下拉参数

sql-server - SSRS 中过滤组的总和

sql-server - 报表服务器无法验证加密数据的完整性