MS SQL 的优化
1,创建必要的索引
根据你经常需要查询的列建立索引
2,使用预编译进行查询
3,调整where子句中的连接顺序
DBMS一般采用自下而上的顺序解析where子句,根据这个原理, 表连接最好写在where其他条件之前
,那些可以过滤掉最大数据记录
4, select 语句中尽量避免使用'*'
如果使用的话,它会对整个table进行查询,相当的耗费时间
5,尽量将多条SQL查询语句压缩到一条查询语句上面来
6, 用where语句带having 语句
7,使用表的别名
当你的表的名字很长的时候,或者你要进行很长的查询的操作的时候,这个时候最好要使用表的别名
8,用exists代替 in
因为in子句将执行一个子查询内部的排序和合并
9,便面在索引列上面使用计算
10,用union all 代替 union
11, 便面隐式类型转换造成全表扫描
12,防止检索范围过宽
使用is not null 或者不等于判断的话,可能造成优化器假设匹配的数目太多,
使用like 运算符的时候,"a%"将会使用索引,而"a%c"和"%c"则会使用全表扫描,因此"a%c"和"c"不能被有效的评估可匹配的数量
------解决方案--------------------敢不敢更多一点
------解决方案--------------------
呵呵,以后会更新的,因为刚接触数据库没多久,也正在工作当做进行调优,所以慢慢来把,
------解决方案--------------------这些条条框框可以拿来参考,但是不要死记硬背
------解决方案--------------------学习。
------解决方案--------------------
你谦虚了啊,以后还有不懂的还要像你请教呢,呵呵
------解决方案--------------------
大师你说的很对,这些只是一些基本的经验总结
------解决方案--------------------当然不遵守这些条条框框也显然是不行的,只是时刻记得不要太相信权威
------解决方案--------------------
好的,因为我现在也是跟着美国微软总部的一个人在学习,所以希望大家以后能帮组帮组我呵呵
------解决方案--------------------我说楼主大哥,你能不能换张穿衣服的头像,公共场合,注意影响。
------解决方案--------------------谢谢分享
------解决方案--------------------楼主写的不错
------解决方案--------------------356有问题
7与优化无关
------解决方案--------------------
请详细说明