热线电话:13121318867

登录
2019-07-05 阅读量: 831
今天看到一些实用的小建议

1.在经常需要进行检索的字段上创建索引。

索引的数量需要控制,过多的索引会降低insert或update的效率。

 

2.避免在索引上使用计算。

在where语句中,如果索引列是计算或者函数的一部分,则DBMS的优化器不会使用索引。

 

3.使用预编译查询(使用参数化SQL)。

既可以避免SQL注入漏洞攻击,数据库还会对参数化SQL进行预编译,在DBSM会为这个SQL进行查询优化。

 

4.尽量将多条SQL语句压缩到一句SQL中。

每次执行SQL时,都要建立网络连接、权限校验、查询优化、发送执行结果,这个过程是非常耗时的。

 

5.用where字句替换having字句。

where是在聚合前筛选记录,having只会在检索出所有记录后才进行过滤。

 

6.使用表的别名。

在连接多个表时,使用表的别名可以减少解析时间。

 

7.用union all替换union。

当确定检索结果不会有重复的记录时,使用 union all 可以提高效率。

 

8.使用“临时表”存放中间结果。

将临时结果存放在临时表,避免多次扫描主表,减少程序执行中“共享锁”阻塞“排它锁”(更新锁),提高并发性能。

 

9.避免在where字句中使用字段null值判断。

使用null值判断会导致引擎放弃使用索引而进行全表扫描。

 

10.在select语句中,不要返回用不到的字段。

在任何情况下,都不要使用“*”,需要用到什么,就返回什么

0.0000
4
关注作者
收藏
评论(0)

发表评论

暂无数据