数据库sql调优

1. 使用缓存优化查询
进行相同的多次查询,结果就会放到缓存中,后续在进行相同的查询,就会直接从缓存中取数据,不会从表里再次查询。

2. 给搜索字段建立索引
一般给where后面的查询条件添加索引(聚簇索引和非聚簇索引)

3. 使用limit函数
明确只需要少量数据的时候,可以使用limit函数。这样数据库查到一定数量的数据条数时,就不会再继续查,提升我们的效率

4. 选择正确的数据库引擎
MyISAM:适合大数据量查询 有表锁
innodb:对插入操作友好 支持行锁

5. 进行大量的删除,插入操作的时候要进行拆分
进行删除跟新增的时候整张表会锁起来,可以使用limit去控制删除插入的条数

6. 字段数据类型尽量使用小的
小数据类型查找比较快

7. 字段长度尽量统一
数据库计算偏移量比较好算

8. 尽量不要赋null值
减少传到后台的时候发生错误的可能

9. 明确固定结果的字段上使用enum类型
如性别,国家等。使用枚举类型后会比使用varchar查询速度快

10. 避免使用select
查得越多速度越慢,只查自己需要的

11. 避免使用rand()
rand函数是在cpu上进行计算的

12. 连接两表的时候,尽量保持两个表的字段类型一致
否则索引建立不上

12. 垂直分割
将表按列的形式分割成表

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值