我有一个查询,它在某些情况下使用“过于简化”的执行计划运行,实际上相当慢(3-5秒)。:显而易见的是,实际的行数/执行数明显高于各自的估计值:
如果我删除了Salesperson.EndDate IS NULL子句,则会运行一个更快的并行执行计划:如果我删除DISTINCT关键字,一个类似的执行计划也会运行得非常快。据我所知,似乎优化器基于其不正确的估计决定查询的
我在Azure SQL (Tier S3) and SQLServer (12.0).上的同一个数据库副本上运行相同的查询,执行计划不同,Azure的性能似乎更差。当观察执行计划时,Estimated Subtree Cost on SQLServer is 0.325 while on Azure SQL it is 1.431。执行时间的最大百分比由其中一个表上的<