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

通过创建带有聚集索引的视图,显著提升了SQLServer中JOIN操作的COUNT查询速度,从1秒多降低到毫秒级。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

朋友的网站速度慢,让我帮忙看下,他用的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几秒

23.gif

转载于:https://www.cnblogs.com/guoadou/archive/2007/01/29/schemabinding_view.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值