Sql语句优化注意

时间:2009-10-31 13:15:00 

1.尽量不要对列名进行函数处理。而是针对后面的值进行处理

例如where col1 = -5的效率比where -col1=5的效率要高

因为后面的条件对列值进行了计算。这样的条件下优化器无法使用索引

而是要针对所有值进行计算之后才能再比较

2.尽量使用和数剧列一样的值进行操作

如果col1是数值型

那么例如where col1 = 2和where col1= ‘2′

则前者效率更高

因为比较字符和数值型的时候

引擎需要把两者都转化成双精度然后进行比较

3.减少函数的使用

例如where col1 >= ‘2009-10-26′ and col1 <= ‘2009-10-27′

和where datediff(day,col1,getdate())=0

后者因为用到函数处理。所以col1上的索引又无法使用了

4.尽量不要用OR

一般对于OR的条件

优化器一般会使用全表扫描

标签:sql优化,语句优化,数据库优化
0
投稿

猜你喜欢

  • 清除浮动的最简写法

    2009-03-30 15:58:00
  • 用JS实现渐变效果,兼容各款浏览器

    2008-09-13 19:10:00
  • 用好FrontPage2003的九大功能

    2008-02-21 14:29:00
  • 优化Oracle停机时间及数据库恢复

    2010-07-20 12:54:00
  • css去掉checkbox边框的方法

    2011-06-06 10:32:00
  • Oracle DBA常用语句第1/2页

    2009-08-08 22:38:00
  • css特性:空白外边距互相叠加

    2010-06-21 10:53:00
  • ASP获取ACCESS数据库的表名以及表名对应的字段名和字段类型

    2009-12-25 18:57:00
  • SQL Server中导入导出数据的三种方式

    2008-11-28 15:53:00
  • CSS中的标点符号用法

    2008-10-03 11:58:00
  • 三招解决SQL Server数据库权限冲突

    2009-03-16 16:58:00
  • 当视觉设计师遇上产品经理、开发工程师…[译]

    2010-01-17 10:18:00
  • HTML和CSS中的视觉语义

    2010-07-09 13:08:00
  • 在SQL 2005中实现循环每一行做一定的操作

    2009-03-05 14:57:00
  • [译]在线广告及其在网页设计中的重要性

    2009-02-06 13:36:00
  • asp智能脏话过滤系统v1.0

    2011-04-14 11:00:00
  • IE中jscript/javascript的条件编译

    2007-10-03 14:03:00
  • ASP中汉字与UTF-8的互相转换

    2009-06-24 11:15:00
  • CSS实现元素透明的那些事

    2009-09-07 12:22:00
  • XMLHTTP获取web造访头信息和网页代码

    2010-04-01 14:37:00
  • asp之家 网络编程 m.aspxhome.com