Sql Server中由于数据量较大,写存储过程时应从那些方面着手来提高查询速度呀
Sql   Server中, 
 我在写存储过程的时候,由于数据量较大,并且其中还有一定量的计算,除建立索引外还应从哪些方面来提高执行速度啊?   
 多谢了!!!
------解决方案--------------------给大家推荐个   
 好的技术群  大家一起学习啊   
 32141736
------解决方案--------------------http://community.csdn.net/Expert/topic/4704/4704136.xml?temp=.7604944     
  SQL语句优化的原则:  (我lisiyong大概的小结了一下!!)   
   1、使用索引来更快地遍历表。 
   一般来说: 
   ①.有大量重复值、且经常有范围查询,可考虑建立群集索引; 
   ②.经常同时存取多列,且每列都含有重复值可考虑建立组合索引; 
   ③.组合索引要尽量使关键查询形成索引覆盖,其前导列一定是使用最频繁的列。     
 (下面几点可能是你要考虑到的)   
   2、IS NULL 与 IS NOT NULL   
           不能用null作索引,任何包含null值的列都将不会被包含在索引中。   
           EXISTS要远比IN的效率高。 
   4、在海量查询时尽量少用格式转换。   
   5、当在SQL SERVER 2000中,如果存储过程只有一个参数,并且是OUTPUT类型的, 
       必须在调用    这个存储过程的时候给这个参数一个初始的值,否则会出现调用错误。 
   6、ORDER BY和GROPU BY   
        使用ORDER BY和GROUP BY短语,任何一种索引都有助于SELECT的性能提高。注意如果索引列里面有NULL值,Optimizer将无法优化。   
   7、任何对列的操作都将导致表扫描,它包括数据库函数、计算表达式等等,查询时要尽可能 将操作移至等号右边。!!!!   
   8、IN、OR子句常会使用工作表,使索引失效。如果不产生大量重复值,可以考虑把子句拆开。拆开的子句中应该包含索引。     
   9、SET SHOWPLAN_ALL ON 查看执行方案。DBCC检查数据库数据完整性。   
     DBCC(DataBase Consistency Checker)是一组用于验证 SQL Server 数据库完整性的程序。   
   10、慎用游标 
   在某些必须使用游标的场合,可考虑将符合条件的数据行转入临时表中,再对临时表定义游标进行操作,这样可使性能得到明显提高。        
------解决方案--------------------我BIOG:  http://blog.csdn.net/lisiyong/   
 中我也总结了下  而且有篇关于索引优化的帖子。
------解决方案--------------------他们都讲了很多有关索引优化的了,我想也可以用临时表,或将查询的结果数据存在另一个表中。这样可以很大程序提高查询 
 不过这通常是要经过复杂的查询才会考虑这个方法.我个人认为这也是一个很好的方法