我们有一个在搜索屏幕上有 30 秒超时的网络应用程序。我已经分析了原始查询并为查询的 9 个连接之一添加了一个缺失的索引。其他诸如预期行数和实际行数之类的东西都很好。没有表或索引扫描。但它仍然没有在 30 秒内出现。它很接近。
我通过使用临时表分解成更小的步骤来重写查询,并且每步骤不超过 2 个连接。它现在在5秒内尖叫。都好。
我的具体问题是这是解决此类问题的正常/常见方法吗?为什么我要以这种方式帮助优化器?
performance sql-server-2005 sql-server query-performance
performance ×1
query-performance ×1
sql-server ×1
sql-server-2005 ×1