注:本篇只是记录所碰到的问题。
最近对程序做了一些性能上的优化,集中在sql上。发现了一个问题。
同一个语句,如果搜索的范围小,系统自动使用index。如果搜索的范围大,系统不知道为什么放弃使用index。改用scan table。
这样很影响性能。造成的原因不是很清楚。如果知道朋友可以留言给我,指教一下。
为了解决这个问题,我只有在sql语句上强制使用某的index。 例子如下
Select ..... from products with (index(indexname))where .....
本文讨论了在进行SQL性能优化过程中遇到的一个具体问题:当查询范围过大时,数据库系统为何会放弃使用索引而选择全表扫描,这导致了性能下降。为解决此问题,作者采取了在SQL语句中强制指定索引使用的策略。
10万+

被折叠的 条评论
为什么被折叠?



