首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于存储过程或视图的报告速度更快

基于存储过程或视图的报告速度更快
EN

Stack Overflow用户
提问于 2011-07-31 19:18:42
回答 3查看 1.2K关注 0票数 1

我想做一个rdlc报告,根据inputdate标准使用joins从3-4个表中获取结果。我想知道哪个更好作为后端,视图或存储过程,以获得更快的结果和性能增益,因为我期望10000-30000条记录的结果。我的数据库是SQL Server 2008。请帮帮我!

谢谢

EN

回答 3

Stack Overflow用户

发布于 2011-07-31 19:20:39

如果没有更多的细节,就不会有什么不同。

如果查询可以表示为一个简单的视图,那么您就应该这样做。

更有可能影响查询速度的是您已有的索引。

票数 1
EN

Stack Overflow用户

发布于 2011-07-31 23:14:09

我不知道为什么人们认为他们的选择是视图或存储过程。

视图有多种用途。如果您对不同的报表使用相同的基本查询,或者想要简化模式、实现某种类型的安全性等,那么视图可能是有意义的。然而,由于性能原因,视图并未实现(让我们暂时不讨论索引视图)。标准视图永远不会加快查询速度,它只是使引用视图比重复组成视图的所有连接等更方便。

您的报表应该调用一个存储过程-这会模块化查询代码,并提供一个修改代码的中心位置。该存储过程是否引用视图是另一个问题。

票数 1
EN

Stack Overflow用户

发布于 2011-07-31 23:58:57

视图在查询上又增加了一层抽象层,并且没有预先优化。因此,如果您只运行底层查询,您将获得比使用视图更好的性能。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6889127

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档