通过创建SCHEMABINDING VIEW提高JOIN的速度

来源:互联网 发布:全国ip地址数据库下载 编辑:程序博客网 时间:2024/05/19 22:51
朋友的网站速度慢,让我帮忙看下,他用的SQL Server里面 有一个文章表里面有30多万条记录 还有一个用户表里面也差不多17万记录 偏偏当初设计的时候没有冗余字段 很多帖子信息需要JOIN用户表来显示 @_@
还好今天学了一招

CREATE VIEW [dbo].[view_xxx] WITH SCHEMABINDING 
AS 
SELECT Table1.主键, Table1.外键 
FROM Table1, Table2 
WHERE ( Table1.外键 = Table2.主键)

CREATE UNIQUE CLUSTERED INDEX IDX_view_xxx
    
ON [dbo].[view_xxx] (主键, 外键);

ALTER DATABASE dbname 
SET ARITHABORT ON 

这样就给视图创建了一个聚集索引

连表以后COUNT的速度从1.几秒一下子降到0.00几秒