当前位置: 代码迷 >> Sql Server >> 查询视图就超时,但是直接从望图里复制语句出来直接运行就没事
  详细解决方案

查询视图就超时,但是直接从望图里复制语句出来直接运行就没事

热度:47   发布时间:2016-04-24 09:26:13.0
查询视图就超时,但是直接从视图里复制语句出来直接运行就没事
有没有哪位朋友遇到过这种奇怪的问题?

------解决思路----------------------
请重新Alter视图,等于重新组织视图结构
------解决思路----------------------
引用:
有没有哪位朋友遇到过这种奇怪的问题?



time out 的具体信息发上来看看。

------解决思路----------------------
这是正常现象。
假定数据全集有1亿记录,然后你要取其中1条。
如果视图没有过滤条件,那么它的执行就是取1亿记录。
通过视图查询:先用视图取1亿记录,再从这1亿记录中取1条,当然会超时了。
直接用一个SQL查询:如果有合适的索引,从索引中检索出对应的记录号然后取这条记录,很快的。

大数据要慎用视图。
------解决思路----------------------
1、视图未必查询就快,视图也可以创建索引
2、视图的查询语句,看下是否有可以优化的地方
------解决思路----------------------
把語句貼出來看看吧
------解决思路----------------------
引用:
1、视图未必查询就快,视图也可以创建索引
2、视图的查询语句,看下是否有可以优化的地方


若基于view的表已有合理的索引,还需要在view上建立索引吗?
  相关解决方案