1

此查询有效:

SELECT [ID]
  ,[PROJECT_ID]
  ,[NAME]
  ,[LOCATION]
  ,[COMMENT]
FROM table1
WHERE PROJECT_ID = 4479

但是这个没有:

SELECT [ID]
  ,[PROJECT_ID]
  ,[NAME]
  ,[LOCATION]
  ,[COMMENT]
FROM table1
WHERE PROJECT_ID = 3560

它无限地旋转和旋转。唯一的区别是使用的值。

“PROJECT_ID”是一个外键,并且有一个用它定义的索引作为唯一的列(通常使用 FK)。

并行:此表的 FK 索引上存在高碎片。

这些是否可能相关,即,如果我重建索引,我应该期望问题会得到解决吗?

我现在无法重建它们,因为它是一个生产系统,我的理解是我只能在可以获得锁时重建索引......比如今晚晚些时候。

任何关于如何“强制重建数据库中所有表中的所有索引,即使它断开用户连接”的任何指导也值得赞赏。

谢谢, - 杰西

4

1 回答 1

2

这些查询是否封装在存储过程中?如果是这样,您可能会受到参数嗅探的影响。

您还可以检查您的统计数据;如果它们非常过时,您可能会得到一个非常糟糕的执行计划,其中包含某些参数而不是其他参数。

于 2012-07-18T19:53:29.427 回答