1.建立索引,首先应该考虑在where以及order by 涉及的列上建立索引
2.避免引擎放弃使用索引而进行全盘扫描
2.1 避免在where子句中对字段进行null值判断
2.2 避免在where字句中使用!= 或<> 操作符
2.3 避免在where字句中使用or连接的两个条件一个字段有索引一个字段没有索引
2.4 避免在where字句中使用in 和 not in
2.5 避免在 where 子句中对字段进行表达式操作
2.6 避免在where子句中对字段进行函数操作
2.7 避免在where子句中对字段进行‘%%’全模糊查询以及‘%···’右模糊查询
3.设计良好的数据库 各个表之间关系明确,减少数据冗余
4.设计良好的表结构 对于字段数据类型,是否可为空做科学定义
5.减少多层嵌套查询
6.尽量避免使用游标
7.减少大颗粒度锁提高并发
8.合适情况下使用表变量代替临时表
2.避免引擎放弃使用索引而进行全盘扫描
2.1 避免在where子句中对字段进行null值判断
2.2 避免在where字句中使用!= 或<> 操作符
2.3 避免在where字句中使用or连接的两个条件一个字段有索引一个字段没有索引
2.4 避免在where字句中使用in 和 not in
2.5 避免在 where 子句中对字段进行表达式操作
2.6 避免在where子句中对字段进行函数操作
2.7 避免在where子句中对字段进行‘%%’全模糊查询以及‘%···’右模糊查询
3.设计良好的数据库 各个表之间关系明确,减少数据冗余
4.设计良好的表结构 对于字段数据类型,是否可为空做科学定义
5.减少多层嵌套查询
6.尽量避免使用游标
7.减少大颗粒度锁提高并发
8.合适情况下使用表变量代替临时表
9.避免使用SELECT * FROM 尽量使用具体的字段代替*号