1.尽量不要使用select *,只查需要的字段
2.在where和order by的字段建立索引(索引数量不要太多,索引降低了insert和update的效率)
3.调整where的条件顺序,过滤数量多的条件放在前面
4.尽量把多句sql用一条查出来
5.尽量把条件放到where中而不是having中,因为where在聚合前就筛选了记录,having是检出所有记录后再去过滤
6.使用表的别名,这样就不需要去寻找是哪个表的字段
7.如果能确定两张表没有重复的数据,就用union all代替union。因为union会尝试合并两张表,在输出前进行排序
8.对于连续的,用between而不用in
9.update时只更新必要的字段
10.用varchar代替char,varchar是可变长度,char是定长