我有一个从多个表中收集数据的视图。虽然视图本身没有索引,但使用视图的任何内容似乎都会从具有索引的基础表中受益。这些是自动使用的吗?如果是,那么在您的视图上创建索引的重点是什么?任何关于这个主题的推荐文章都会受到欢迎。
答案 0 :(得分:9)
是的,自动使用基础表索引 - 视图只是从基础表中提取数据。
关于在视图上创建索引的好处,请参阅this MS Technet article。小摘录:
使用索引改进查询 表现不是一个新概念; 但是,索引视图提供 额外的性能优势 使用标准无法实现 索引。索引视图可以增加 查询性能如下 方法:
- 聚合可以预先计算并存储在索引中以最小化 在查询执行期间进行昂贵的计算。
- 可以预先连接表格并存储结果数据集。
- 可以存储联接或聚合的组合。
答案 1 :(得分:2)
查询优化器重写查询并“展平”子查询的使用(视图确实是这样)。因此将使用基础索引。