2

我看过几个执行计划示例,它们显示“非聚集索引插入显示计划运算符”。我继续创建了一个带有非聚集索引的表。

如果我在那里插入并显示实际(或估计)执行。计划我看不到这个操作员。只有聚集索引插入或表插入(取决于结构)。

使用版本 SQL Server 2008 R2 开发者版。

我错过了什么吗?谢谢!

4

1 回答 1

1

您可能需要插入更多行才能看到显示为单独运算符的非聚集索引维护。

您可以获得“”(每索引)或“”(每行)计划。

对于狭窄的计划,索引维护在计划中不显示为单独的运算符。在 Management Studio 中,您可以右键单击聚集索引插入运算符,然后在属性窗口中展开“对象”节点以查看此类计划的受影响索引。

所以例如

CREATE TABLE #T(
A INT CONSTRAINT PK PRIMARY KEY, 
B INT CONSTRAINT UQ UNIQUE) 


/*narrow plan*/
INSERT INTO #T 
SELECT 1,1

/*wide plan*/   
INSERT INTO #T 
SELECT DISTINCT number, number
FROM master..spt_values
WHERE number <> 1

DROP TABLE #T

给出以下两个方案

计划

并在第一个计划中扩展 CI 插入运算符的属性窗口显示

特性

于 2012-07-31T15:44:05.403 回答