SQL Server索引
文章平均质量分 71
KevinLiu
SQL Server MVP
展开
-
Nonclustered Indexes页级别包含什么数据?
先来看两个例子: 1. 创建测试表,C1为主键。 CREATE TABLE [dbo].[ProdTable2]( [c1] [int] IDENTITY(1,1)NOTNULL, [c2] [datetime] NULL, [c3] [char](25)NULL, CONSTRAINT[PK_ProdTable2] PR原创 2012-08-01 19:53:28 · 1168 阅读 · 0 评论 -
消除Key Lookup和RID Lookup Part1:使用Include Index
在执行计划中我们经常会看到KeyLookup和RIDLookup操作,而且Cost很大,具体什么是Key Lookup和RID Lookup: RIDLookup是在使用提供的行标识符(RID) 在堆上进行的书签查找 KeyLookup运算符是在具有聚集索引的表上进行的书签查找 区别是 Key Lookup通过聚集索引键值进行查找,RID Lookup是通过堆的行标识符(F原创 2012-08-01 15:42:10 · 5598 阅读 · 0 评论 -
消除Key Lookup和RID Lookup Part2:索引交集和索引Join
今天在MSDN查询优化建议中看到这样一条信息:SQL Server 会自动考虑索引交集并可以在同一查询中对同一个表使用多个索引(可能跟大家的理解有偏差)。 在解释之前我们先看一个例子: useAdventureWorks go select soh.* from sales.SalesOrderHeaderASsoh WHERE soh.SalesPersonID= 276原创 2012-08-06 15:48:51 · 7248 阅读 · 1 评论 -
SQL Server 自动更新统计信息的基本算法
最初接触SQL Server的时候认为SQLServer数据更改的同时就会相应的更新统计信息,其实SQL Server不是这样做的.基于性能考虑,SQL Server使用下面的算法更新统计信息。 自动更新统计信息的基本算法是: · 如果表格是在 tempdb 数据库表的基数是小于 6,自动更新到表的每个六个修改。 · 如果表的基数是大于 6,但小于或等原创 2012-08-14 13:36:04 · 1674 阅读 · 0 评论 -
Error: 1934 INSERT failed because the following SET options have incorrect settings: 'ARITHABORT'.
今天对一个Index做了调整,为了提高性能将Index修改为FilteredIndex,结果一个JAVA程序出现了下面的错误: Error: 1934, Severity: 16, State: 1 INSERT failed because thefollowing SET options have incorrect settings: 'ARITHABORT'. Verif原创 2012-12-18 14:18:51 · 3442 阅读 · 0 评论