2、分析语句
执行计划如下:
图3 查询计划全图
图4 查询计划1
图5 查询计划2
图6 查询计划3
从整个查询计划来看,主要开销都花在了图5的那个部分——两个“聚集索引扫描”。
查看一下这两个数“聚集索引扫描”,搞什么飞机呢?
奇怪了,查询语句里面没有Log_Nwtwork_circs 这个表啊,再仔细分析一下这个执行计划,嫌疑最大的就是view_Log_Network_circsByUnit这个视图了。
查看一下这个试图的定义:
CREATE VIEW [dbo].[view_Log_Network_circsByUnit]
AS
SELECT B.*
FROM (
SELECT node_code, MAX(end_time) AS end_time
FROM Log_Network_circs
GROUP BY node_code
) A
LEFT OUTER JOIN
dbo.Log_Network_circs B
ON
A.node_code = B.node_code
AND
A.end_time = B.end_time
看着有点晕是吧,那么看看下图