首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何从视图和子查询中获得性能好处?

如何从视图和子查询中获得性能好处?
EN

Database Administration用户
提问于 2013-10-09 09:54:59
回答 1查看 14.3K关注 0票数 4

我想知道如何/是否有人从使用视图而不是子查询中获得了显著的性能好处。

我不想定义一个具体的案例,因为我试图建立良好的实践和经验规则,除了逐个案例。

一个示例是在保险单索赔列表中找到最后的索赔日期,在该列表中,您开始按排序/筛选的客户集进行搜索,并且所有索赔都在它们自己的表中。我目前正在使用一个视图,而不是考虑一个子查询。

可能影响不同情况下的性能的事情:

  • 视图可以以某种方式避免子查询需要进行的全扫描吗?
  • 对于确保在加入视图时使用最好的索引是否有任何限制/注意事项?
EN

回答 1

Database Administration用户

回答已采纳

发布于 2013-10-09 10:27:33

使用视图(或公共表表达式=“内联视图”)而不是子查询实现性能好处的情况是,必须在查询中多次重复相同的子查询。

如果您可以用相同的视图名称(或命名为公共表表达式)替换每个子查询,那么优化器知道这是一回事,可以缓存结果或重构执行路径,以便只需要查询一次结果。

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

https://dba.stackexchange.com/questions/51264

复制
相关文章

相似问题

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