我对数据库有一个复杂的视图,它通过在其上执行多个连接(左连接和内连接)返回26Ɣ 404行,包括子查询中的一些列。
我尝试过运行两个查询:
1)
SELECT
*
FROM dbo.vw_viewname as v
和
2)
SELECT
v.column_name
FROM dbo.vw_viewname as v
第一个查询执行时间: 0:00:40
第二个查询执行时间: 0:02:13
当我从另一个数据库调用此视图时,时间差异甚至更大,从 [0:00:02 VS 0:02:30] 执行连接。 (yupp,2秒vs 2分钟)
任何人都可以解释为什么会这样吗?我真的找不到任何合乎逻辑的理由!
编辑 :包括在SELECT列表中,子查询生成的视图列将执行时间恢复正常(2秒)。