如何包括SQL索引提示影响查询性能?(How does including a SQL index

2019-09-20 12:00发布

说我有一个表与2,000,000+记录和一些索引的SQL 2005数据库。 什么优势,有在我的查询中使用索引提示? 是否有过缺点在查询中使用索引提示?

Answer 1:

首先,请尝试使用SQL事件探查器生成的活动在数据库中超过几个小时正常工作量带.trc文件。 然后使用SQL Server Management Studio中的工具菜单上的“数据库引擎优化顾问”,看它是否提出任何额外的索引,复合索引或覆盖索引可能是有益的。

我从来没有使用查询提示,大多多万行的数据库。 他们有时会产生负面影响性能。



Answer 2:

我相信每个人都在这里指向的关键点是非常慎重的考虑索引提示的使用可以提高查询当且仅当多个索引存在可用于中检索数据的性能,并且如果SQL服务器没有使用正确的。

根据我的经验,我发现,这是不是很常见于需要索引提示,我相信我也许有2-3查询今天用他们....正确的索引创建数据库的优化是在使用中应得到你最有一直到执行数据库。



Answer 3:

该指数暗示将才开始发挥作用,其中的查询涉及连接表,并在使用的列加入到其他表中的多个索引相匹配。 在这种情况下,数据库引擎可以选择使用一个索引,使加盟,从调查你可能知道,如果它使用另一个索引的查询将有更好的表现。 在这种情况下,您提供的索引提示,告诉数据库引擎使用哪个索引。



Answer 4:

我的经验是,有时候你更了解你的数据集,然后SQL Server会。 在这种情况下,你应该使用查询提示。 换句话说:你帮助优化决定。

我曾经建立一个数据仓库,其中SQL服务器没有使用的最佳指标上的复杂查询。 通过我的查询让索引提示我设法让查询去约100倍的速度。

使用它们你分析查询计划之后。 如果你认为你的查询可以使用其他索引时或运行速度更快通过以不同的顺序使用它们,给服务器的提示。



文章来源: How does including a SQL index hint affect query performance?