对于包含大量数据的表格,什么是最好的?
我有一个基于某些过滤器创建报告的存储过程。在我的SP中,我阅读了表格,然后将所有内部联接和公式放在我放置过滤器的where条件中。
谈论表现什么更好?
创建一个包含所有连接的视图或读取表格(正如我所做的那样)?
答案 0 :(得分:16)
与使用视图或直接表访问相比,性能更多地依赖于拥有适当的索引,而(物化视图除外)的行为方式完全相同。
答案 1 :(得分:5)
取决于。
只要View不包含聚合(或需要预先实现物化的构造),它就会完全相同(并且在很多情况下可以通过优化器短路的标准)
您是否在特定情况下尝试过基准测试?
@OtávioDécio通过提及“正确”索引会对性能产生更大影响来打败我。
答案 2 :(得分:0)
使用select count(*) from view
会大大慢于表格。由于表的标题包含行号,因此视图没有此类信息。