0
执行此查询时,SQL Server会选择错误的执行计划,为什么?SQL Server选择错误执行计划
SELECT top 10 AccountNumber , AVERAGE
FROM [M].[dbo].[Account]
WHERE [Code] = 9201
Go
SELECT top 10 AccountNumber , AVERAGE
FROM [M].[dbo].[Account] with (index(IX_Account))
WHERE [Code] = 9201
SQL Server选择此查询和使用时间= 78254毫秒聚集PK指数,但如果我强迫SQL Server中选择一个非聚集索引,然后经过时间为2毫秒,统计帐户表被更新。
请张贴您的表格定义。 – Raj
CREATE TABLE [DBO]。[帐户]( \t [ACCOUNTID] [BIGINT] IDENTITY(1,1)NOT NULL, \t [代码] [SMALLINT] NOT NULL, \t [账户号码] [BIGINT] NOT NULL, \t [AVERAGE] [浮子] NULL, \t [TOTALDBAMNT] [浮子] NULL, \t [TOTALCRAMNT] [浮子] NULL, 约束[PK_Account] PRIMARY KEY CLUSTERED ( \t [ACCOUNTID] ASC )WITH( PAD_INDEX = OFF,STATISTICS_NORECOMPUTE = OFF,IGNORE_DUP_KEY = OFF,ALLOW_ROW_LOCKS = ON,ALLOW_PAGE_LOCKS = ON)ON [PRIMARY] )ON [P RIMARY] – user3189030
而你在'CODE'列有一个非聚集索引? – Raj