如何优化sql
2020-06-15 本文已影响0人
MisAutumn
- 索引指向性强的列放前面
- 索引下推:尽量先用where过滤数据,再查询
- 使用联合索引时符合最左匹配原则
- 让搜索放弃使用索引的情况:用like时不要左边模糊,不要在where中用or、找null值、使用!= <>符号、表达式、函数
- 慎用in、not in,用exist替代in
- 只返回需要的字段
- 反复查询某一数据集时可以创建临时表
- 分表,可以按水平或垂直切分。垂直分表其实就是将经常使用的数据和很少使用的数据进行垂直的切分,切分到不同的库,提高单库的数据容量,如:前3个月之前的交易记录就可以放另一个库中。