关于索引视图的其他信息
如果编写 T-SQL查询的方式对您来说很重要,您应该测试同一个问题的几个不同的解决方案来获得更好的性能。索引视图是一个很出色的优化方法,因为它会在磁盘上存储查询结果;尤其在聚合数据时,索引视图可节省许多 I/O 系统开销。在某些情况下,索引视图可以在很大程度上提高检索性能,但要记住,索引视图也会降低修改性能。
CREATE VIEW V_T1_c1 WITH SCHEMABINDING
AS
SELECT c1, COUNT_BIG(*) AS cnt
FROM dbo.T1 GROUP BY c1
GO
CREATE UNIQUE CLUSTERED INDEX idx_uc_c1
ON V_T1_c1(c1)
不过,索引视图都要求在标准版、企业版的数据库上建立,如果是express那就不行了,还是要根据客户的业务量来定制是否需要企业版数据库。
以下是很有帮助的连接,很有必要看下:索引视图
但并不是建立了索引视图,立马查询优化器就可以分析利用的到,如果你要使用索引视图,还需要显式的说明WITH (NOEXPAND),否则优化器并不会考虑,你还需要去手动的设置优化选项,使查询优化器考虑索引视图。但是有些版本的数据库的查询优化选项是不可用的,例如sqlserver 2005 standard,即不支持这个优化选项。
详细请参考:查询优化器选项设置