在查询执行计划中插入的成本很高(99%)

时间:2014-02-19 10:56:53

标签: sql sql-server-2008 insert query-optimization execution-time

我的查询如下:

SELECT c.irn, 
       pLog.policingname, 
       ce.* 
INTO   #caselist 
FROM   employeereminder_ilog ce 
       JOIN cases c 
         ON ce.caseid = c.caseid 
       JOIN policinglog pLog 
         ON ( ce.logdatetimestamp BETWEEN 
              pLog.startdatetime AND pLog.finishdatetime ) 
WHERE  ce.logdatetimestamp BETWEEN @start_pre AND @end_pre 

employeereminder_iLOG是一个非常庞大的表,大约32M行。 POLICINGLOG大约有50行。 案例大约0.5米行。 @start_pre和@end_pre的预定义变量大约相差30分钟。

这个查询大约需要30分钟才能运行,并返回大约600个结果。

我试图通过查看执行计划来找到加速查询的方法。我无法弄清楚为什么插入占据了99%的查询,而不是从employeereminder_iLOG中选择。

enter image description here

所以,我的问题是:

  1. 为什么费用来自插入,而不是来自employeereminder_iLOG的选择。
  2. 是否可以加快此查询?

0 个答案:

没有答案