MariaDb SQL查询性能 注意事项

where、on和order by指定的字段要有索引

复杂计算的结果应在生成后写入 而不是每次读取时计算,除非写的成本大于读

 

除了分页以外 避免出现count(*)的情况 count数据用一个count字段在写入时累加 判断是否存在使用有短路机制的exists()函数。

避免出现使用sum()的情况,应建立单独的表和字段写入时更新累加的相应结果。

任何情况下都应该避免使用not in(),应使用in()、exists()、not exists()和union查询代替。

in()当中不能包含SQL查询,如果需要包含查询则用exists()函数和等价的条件代替。

任何情况下都应该避免使用外连查询,应使用内连查询+多条SQL查询代替。

posted @ 2017-02-07 10:28  RickGuo  阅读(1058)  评论(0编辑  收藏  举报