我的查询正在缓慢运行。我一般知道要使性能更快,限制连接并尝试使用PROCS代替直接查询。由于业务规则,我无法使用Procs。我已经尽可能多地削减了连接的数量。

查询调整的下一步是什么?

有帮助吗?

解决方案

最简单的事情是去管理工作室运行此命令:

SET SHOWPLAN_ALL ON

然后运行您的实际查询。

您将无法获得常规查询结果。它将为您提供执行计划(非常详细的列表,列出了SQL Server在结果集中所做的事情)。查看输出并尝试了解其含义。我通常会寻找“扫描”,这是一个缓慢的部分,我尝试重写它,以便使用索引。

其他提示

添加索引可能是您可以做的第一件事来提高查询性能,而您尚未提及它。

您是否查看了执行计划,以查看是否可以通过其他索引来改善这种情况?

此外,您应该确保您的查询以这种方式编写,以便他们可以使用任何索引 有效地存在(例如,避免不可避免的结构,避免 *)

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top