mysql语句优化工具java_MySQL语句优化

sql 编译顺序 from... on... join... where... order by... group by... having... select...

查看sql语句性能:  explain 查询sql语句

1. 最佳作前缀,使用索引顺序(按编译顺序)与定义索引时顺序一致,若该字段有跳过、反序,该字段及后面字段索引失效

2. where条件中一切不是=的操作大概率会使索引失效,包括in、!=、>、is null、计算、函数等等

3. 查询字段与条件字段不一致时使用子查询,避免临时表出现

4. 若用了复合索引,尽量使用全部索引字段

5. 能不查询多字段时,尽量使用索引覆盖

6. 使用like模糊查询时,按关键字左匹配,即‘x%’,若使用'%x%',索引失效

7. or会使全部索引失效

8. 尽量不要导致类型转换,否则索引失效

9. 使用order by时,根据表中数据量调整单路还是双路查询,也可以调整buffer区大小:如set_max_length_for_sort_data = 1024  (单位byte)

10. 避免使用select *...

11. 分页偏移量大时,尽量使用子查询  select * from tab where id>=(select id from tab  limit 100000,1) limit 100;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值